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

笨办法学python第33节

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

 1 i = 0
 2 numbers = []
 3 
 4 while i < 6:
 5     print "At the top i is %d" % i
 6     numbers.append(i)
 7 
 8     i = i + 1
 9     print "Numbers now: ", numbers
10     print "At the bottom i is %d" % i
11 
12 print "The numbers:"
13 
14 for num in numbers:
15     print num

运行结果如下:

在将这段代码改成函数的时候遇到了问题,开始我想的是这个函数的变量是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。如下:

 1 i = 0
 2 numbers = []
 3 
 4 def xunhuan(m):
 5     global i
 6     while i < m:
 7         numbers.append(i)
 8         i = i + 1 
 9     return numbers
10     
11 
12 new_number = xunhuan(6)
13 print "The numbers: " , new_number

运行成功!结果:

然后大肚子又给我说可以设置输入的值m,就是用 m = input("input: ") ,然后我就在def里面加上了这句话,发现有错误

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

 1 i = 0
 2 numbers = []
 3 
 4 def xunhuan(m):
 5     global i
 6     while i < m:
 7         numbers.append(i)
 8         i = i + 1 
 9     return numbers
10     
11 
12 m = input("input: ")
13 new_number = xunhuan(m)
14 print "The numbers: " , new_number

解决!运行结果:

 

注:

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

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

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

 

转载于:https://www.cnblogs.com/EiffelRachel/p/5862623.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值