练习:求列表(整数列表)平衡点
python“每日一练”
练习题目
我的想法
累加求和,我觉得用sum(list)更好。前面后面的元素,我用了list[:k] 、list[k+1:]列表切片实现。
最初的代码,输入数列的样子实在太丑,都不敢把运行效果贴出来了。🤪🤪
后改为re提取字符数字,连输入错误拦截代码都给省下来了。数字列表输入,变成简洁的一个字符串输入了。😀😀立即上run效果:
代码运行效果
python代码
(如果从语句注释不能清楚作用,请评论区留言指教和探讨。🤝)
#/usr/bin/nve python
# coding: utf-8
#01. 求整数列表的平衡点
import re
#输入
s = input(f
输入数列正整数(任意字符间隔):
$>>)
#re提取的数字字符列表并用int()转换成正整数
digit = [int(i) for i in re.findall(rd+, s)]
#input(digit) #此行代码为查看re提取并处理的正整数列表用,不删是让您明白的的调试过程
#处理
flag = 0
k = 1
for i in digit[:]:
#d1, d2 = digit[:k], digit[k+1:]
#print(d1, i, d2) #此两行为调试用代码,对程序无用,之所以不删,是可以当作代码说明
if sum(digit[:k])==sum(digit[k+1:]):
equipoise = digit[k]
flag = 1
break
k += 1
print(
输出:)
if flag:
print(f
{digit}
{"﹊"*21}
列表的平衡点是:第{k}位的{equipoise})
else:
print(f
{digit}
{"﹊"*21}
列表不存在平衡点。)
我的博文推荐:
-
好玩儿的(当前阅读2558)()
推荐条件: 点阅破千
精品文章:
