python学习——将while循环改成函数
笨办法学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
运行结果如下:

在将这段代码改成函数的时候遇到了问题,开始我想的是这个函数的变量是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
运行成功!结果:
然后大肚子又给我说可以设置输入的值m,就是用 m = input("input: ") ,然后我就在def里面加上了这句话,发现有错误:
解决方法是,这个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
解决!运行结果:

注:
1.红色字体是错误以及改正。
2.我发现我用的函数名“xunhuan”简直了,,因为八块腹肌用的“loop”,,还有我感觉不能叫大肚子,就好比要是叫一个胖子胖子,他就永远减不下来了,,所以就叫你八块腹肌吧哈哈哈哈。
3.第一次写博客,坚持坚持!
python学习——将while循环改成函数的更多相关文章
- 【Python学习笔记】循环和迭代
for和while基本语法 break和continue else的使用 enumerate和zip在循环中的应用 for和while基本语法 Python中的的循环使用for和while语句来实现, ...
- Python学习(八) —— 内置函数和匿名函数
一.递归函数 定义:在一个函数里调用这个函数本身 递归的最大深度:997 def func(n): print(n) n += 1 func(n) func(1) 测试递归最大深度 import sy ...
- python学习笔记四——循环及冒泡排序
3.3.3 break 和 continue语句 break:跳出整个循环 continue:跳出当前循环继续后面的循环 例: x=int(input("please input the ' ...
- python学习day6 for循环 字符串的内置方法
1.for循环 和while相比 l=[1,2,3] i=0 while i <len(l) print(l[i]) i+=1 l=['a','b','c'] for item in l: pr ...
- python学习笔记:循环语句——while、for
python中有两种循环,while和for,两种循环的区别是,while循环之前,先判断一次,如果满足条件的话,再循环,for循环的时候必须有一个可迭代的对象,才能循环,比如说得有一个数组.循环里面 ...
- 用python将SQL格式文件改成自己想要的格式
INSERT INTO TTT (NSAME, ID, AGE) VALUES ('AAA', '201023210816', '22'); 将上面的SQL格式改成以下的格式 AAA|20102321 ...
- Python学习:for 循环 与 range()函数
for 循环 For … in 语句是另一种循环语句,其特点是会在一系列对象上进行迭代(Iterates),即它会遍历序列中的每一个项目 注意: 1.else 部分是可选的.当循环中包含它时,它 ...
- python学习之路-4 内置函数和装饰器
本篇涉及内容 内置函数 装饰器 内置函数 callable() 判断对象是否可以被调用,返回一个布尔值 1 2 3 4 5 6 7 8 9 10 11 num = 10 print(callabl ...
- python学习 day013打卡 内置函数
本节主要内容: 内置函数: 内置函数就是python给你提供的.拿来直接用的函数,比如print,input等等.截止到python版本3.6.2 python一共提供了68个内置函数.他们就是pyt ...
随机推荐
- codevs1409 拦截导弹2
[问题描述]一场战争正在 A 国与 B 国之间如火如荼的展开.B 国凭借其强大的经济实力开发出了无数的远程攻击导弹,B 国的领导人希望,通过这些导弹直接毁灭 A 国的指挥部,从而取得战斗的胜利!当然, ...
- js 睡觉
js睡觉 function sleep(numberMillis) { var now = new Date(); var exitTime = now.getTime() + numberMilli ...
- The integer promotion.
Usual Arithmetic Conversion: The integer promotions are performed on both operands. Then the followi ...
- C#利用服务器实现客户端之间通信
这两天在学习C#,C#高级编程真的是厚厚的一本书QAQ. 昨天看了一下里面的通信部分(其实还没怎么看),看了网上一些人的博客,自己在他们的博客基础上写了一个通信. 先来讲述下我自己对于整个Socket ...
- error: command 'cc' failed with exit status 1
报错: Complete output from command /usr/bin/python -u -c "import setuptools, tokenize;__file__='/ ...
- eclipse中mybatis_generator插件的安装与使用
git地址:https://github.com/mybatis/generator 下载后解压: 选择任意一个版本的jar放到eclipse的features目录下即可 选择任意一个版本的jar放到 ...
- SQL Server Lock Escalation - 锁升级
Articles Locking in Microsoft SQL Server (Part 12 – Lock Escalation) http://dba.stackexchange.com/qu ...
- mysql忘记密码
修改 /etc/my.cnf 添加 skip-grant-tables 修改完后重启mysql 这样就可以直接进入mysql 然后修改mysql数据库密码 mysql>update user s ...
- windows下安装python模块
如何在windows下安装python模块 1. 官网下载安装包,比如(pip : https://pypi.python.org/pypi/pip#downloads) pip-9.0.1.tar. ...
- Linq常用语法详细
1.简单的linq语法 //1 var ss = from r in db.Am_recProScheme select r; //2 var ss1 = db.Am_recProScheme; // ...