python学习——将while循环改成函数

时间:2022-11-29 23:31:30

笨办法学python第33节

这一节主要学习内容是while循环,记录内容为将while改成函数,首先源代码如下:

 i = 0
numbers = [] while i < 6:
print "At the top i is %d" % i
numbers.append(i) i = i + 1
print "Numbers now: ", numbers
print "At the bottom i is %d" % i print "The numbers:" for num in numbers:
print num

运行结果如下:

python学习——将while循环改成函数

在将这段代码改成函数的时候遇到了问题,开始我想的是这个函数的变量是numbers,就是def xunhuan(number),然后就不会写了,后来问了大肚子怎么回事,他说我变量不对,变量不是最后的结果numbers,是6,就是i<6的这个6,然后我就改成了

def xunhuan(m),就是改成如下代码:

i = 0
numbers = [] def xunhuan(m): while i < m:
return numbers.append(i)
i = i + 1 new_number = xunhuan(6)
print "The numbers: " , new_number

但是还是不对,说 i 没有定义,大肚子说应该在def函数里面加上global i,意思就是说,这个最开始定义的i是全局变量,函数里面也能用,然后我就加上了global i,发现还是不对,发现这个函数里面最后没有一个return,而且只能有一个return,所以我就把循环里面的return删了,在最后加上了return numbers。如下:

 i = 0
numbers = [] def xunhuan(m):
global i
while i < m:
numbers.append(i)
i = i + 1
return numbers new_number = xunhuan(6)
print "The numbers: " , new_number

运行成功!结果:python学习——将while循环改成函数

然后大肚子又给我说可以设置输入的值m,就是用 m = input("input: ") ,然后我就在def里面加上了这句话,发现有错误:python学习——将while循环改成函数

解决方法是,这个m = input("input: ") 不能放到def里面,应该放到def外面,代码如下:

 i = 0
numbers = [] def xunhuan(m):
global i
while i < m:
numbers.append(i)
i = i + 1
return numbers m = input("input: ")
new_number = xunhuan(m)
print "The numbers: " , new_number

解决!运行结果:

python学习——将while循环改成函数

注:

1.红色字体是错误以及改正。

2.我发现我用的函数名“xunhuan”简直了,,因为八块腹肌用的“loop”,,还有我感觉不能叫大肚子,就好比要是叫一个胖子胖子,他就永远减不下来了,,所以就叫你八块腹肌吧哈哈哈哈。

3.第一次写博客,坚持坚持!