python有没有for循环_python有for循环吗

Python中的for循环

Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。(遍历:通俗点说,就是把这个循环中的第一个元素到最后一个元素依次访问一次)。

for循环的基本结构如下:

具体看这个案例:

设计一个函数,在桌面创建10个文本,用数字从1-10依次给它们命名。def text_create():

path = '/Users/duwangdan/Desktop/'

for text_name in range(1,11):

# 1-10的范围需要用到range函数

with open (path + str(text_name) + '.txt','w') as text:

# with...as的用法正文内会详细介绍

text.write(str(text_name))

text.close()

print('Done')

text_create()

现在我们来理解下每行代码:

第1行:定义一个text_create函数;

第2行:给变量path赋值为桌面路径;

第3行:将1-10范围内的每个数字依次装入变量text_name中,每次命名一个文件;

第5行:打开位于桌面的txt文件,并给每一个text执行写入操作;

第7行:给每个文件依次命名;

第8行:关闭文件;

第9行:执行完一次命名操作后显示一个Done;

第11行:调用函数。

案例中提到了“with...as”,在Python中,“with...as”语法是用来代替传统的“try...finally”的。

比如:打开桌面的test文件,尝试读取文件内容,最后关闭文件。file = open('/Users/duwangdan/Desktop/test.txt')

try:

data = file.read()

finally:

file.close()

虽然这段代码执行良好,但比较冗长,换成用“with...as”来表达后,代码会更为简洁。with open('/Users/duwangdan/Desktop/test.txt') as file:

data = file.read()

除了上面的单层循环之外,还有一种常见的循环,是嵌套循环。

比如用嵌套循环实现九九乘法口诀。for i in range(1,10):

for j in range(1,10):

print('{} X {} = {}'.format(i,j,i*j))

最外层的循环,依次将1-9的数字储存在变量i中;变量i每取一次值,内层循环就依次将1-9的数字储存在变量j中;最后打印出当前的i、j、和i*j的值。

从Python2.6开始,新增了format函数,用来格式化字符串,可以通过{}.format来实现。在上面这个案例中,将i、j、i*j的值分别存入前面的{ }中,然后做好格式化,统一形式。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值