018课后作业,问题我注释出来了
def mFun(*param, base=3):result = 0
for each in param:
result += each
result *= base
print('结果是:', result)
mFun(1, 2, 3, 4, 5, base=5)
#第一题里面用for循环求param的和,请问能用sum()吗?如果要用是不是还需要额外创建空列表才能调用?
def Narcissus():
for each in range(100, 1000):
temp = each
sum = 0
while temp:
sum = sum + (temp%10) ** 3
temp = temp // 10# 注意这里用地板除
if sum == each:
print(each, end='\t')
print("所有的水仙花数分别是:", end='')
Narcissus()
#这里对each不需要int()吗?这题前面出现过,当时没太注意,range遍历会只遍历整型(这是默认的吗?)还是我自己想歪了多虑了{:10_266:}
def findStr(desStr, subStr):
count = 0
length = len(desStr)
if subStr not in desStr:
print('在目标字符串中未找到字符串!')
else:
for each1 in range(length-1):
#这里(length-1)是什么意思呀
if desStr == subStr:
#是。。。不知道怎么表达了,列表吗?
if desStr == subStr:
#这里上下两条都不太明白了,subStr是切片了吗? 也变成列表了?
count += 1
print('子字符串在目标字符串中共出现 %d 次' % count)
desStr = input('请输入目标字符串:')
subStr = input('请输入子字符串(两个字符):')
findStr(desStr, subStr)
{:10_250:} 第三题看不太明白了 1,不需要,你可以直接print(sum(param) * base)
2,range的作用就是把数字变成可迭代对象,不用int是肯定的啊
3(1),因为后面要对each1加1,不减1的话会超出范围。
3(2),基础知识啊。。。索引
3(3),你这学杂了吧。。这个也是索引啊
qiuyouzhi 发表于 2020-5-29 17:05
1,不需要,你可以直接print(sum(param) * base)
2,range的作用就是把数字变成可迭代对象,不用int是肯定 ...
对对对这没给:冒号怎么能联系到切片去 真是浆糊脑子哦{:10_254:} 第一题里面用for循环求param的和,请问能用sum()吗?如果要用是不是还需要额外创建空列表才能调用?可以用sum,不过练习效果下降,因为甲鱼哥希望你自己写出来,而不利用这些内置的;不需要创建空列表,直接 sum (param) 即可:def mFun(*param, base=3):
result = sum(param)
result *= base
print('结果是:', result)
mFun(1, 2, 3, 4, 5, base=5)
这里对each不需要int()吗?
each 是循环按顺序赋值为100~1000的值 本身就是整型,不需要重新int,range就是拿去遍历整型滴
第三题:
这里(length-1)是什么意思呀 防止 desStr 的索引超出范围,引起报错
是。。。不知道怎么表达了,列表吗? for 循环 的each1遍历range里面的整数,就是整型不是列表
这里上下两条都不太明白了,subStr是切片了吗? 也变成列表了?subStr叫索引,索引subStr里面的位置参数为 1 的元素
要是我,第一题,直接return sum(param) * base
第二,ecah 是根据遍历的类型来的,具体看遍历的是什么玩意
页:
[1]