python with循环_Python for循环、while循环

Python中有两种循环,分别为:for循环和while循环。

for循环

for循环可以用来遍历某一对象(遍历:通俗点说,就是把这个循环中的第一个元素到最后一个元素依次访问一次)。for循环的基本结构

如下:

具体看这个案例:

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

def text_create():

path = '/home/xuyukun/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('/home/xuyukun/desktop/test.txt')

try:

data = file.read()

finally:

file.close()

虽然这段代码执行良好,但比较冗长,换成用“with...as”来表达后,代码会更为简洁。

with open('/home/xuyukun/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的值。

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

for循环和while循环,两者的相同点在于都能循环做一件重复的事情;不同点在于,for循环是在序列穷尽时停止,while循环是在条件不成立时停止。

具体,看下面示例:

count = 0

while True:

print('重复一遍')

count = count + 1

if count == 3:

break

给变量count赋值为0,while True就是条件成立,显示“重复一遍”,此时count被重新赋值为count+1,如果count等于3时,跳出循环。最后一句的break是跳出最近一层的循环,如果不跳出,程序会无限制循环下去,

不想用break来跳出循环,则可以改变使循环成立的条件。

将上面的例子可转化为如下:

count = 0

while (count < 3):

print('重复一遍')

count = count + 1

逻辑判断到循环的内容已完成

坤子的博客 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权

转载请注明原文链接:Python for循环、while循环

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/297971.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

BeetleX.WebFamily文件图片管理集成

BeetleX.WebFamily在2.4.8版本中集文件管理功能&#xff0c;通过这一功能可以不写任何代码的情况即可集成文件和图片的上传管理功能。接下来详细介绍下如何引入这一功能组件。文件管理功能是基于Vue和Element&#xff0c;所以只有在BeetleX.WebFamily中使用Vue和Element模板才能…

文字中间加横线效果

priceTV.setText("价格&#xff1a;2.00元"); priceTV.getPaint().setFlags(Paint.STRIKE_THRU_TEXT_FLAG);

解题报告 树形图计数

1. 题目 树形图计数 count.pas/c/cpp 【问题描述】 小k同学最近正在研究最小树形图问题。所谓树形图&#xff0c;是指有向图的一棵有根的生成树&#xff0c;其中树的每一条边的指向恰好都是从根指向叶结点的方向。现在小k在纸上画了一个图&#xff0c;他想让你帮忙数一下…

怎么部署_2020怎么部署新零售商城?

移动电子商务的发展壮大&#xff0c;5g网络技术的扶持&#xff0c;新零售概念时代推动店家完成零售转型&#xff0c;网上零售商城&#xff0c;再加上线下与推广线下的玩法&#xff0c;带来了效率和效益的提升。一&#xff0c;运用社交媒介&#xff0c;大力发展新零售概念下的销…

ARM立即数讲解--LDR和MOV的区别 .

Mov 是把立即数赋给一个寄存器&#xff0c;但对立即数的范围有要求。只能是由8bit连续有效位通过偶数次移位能得到的数。如果立即数超出这个范围&#xff0c;就没办法用一条MOV指令给寄存器赋值。LDR除了普通的读数之外&#xff0c;也有给寄存器赋立即数的功能。你只要写 LDR R…

python self 值自动改变,在python中对self的理解

在python中对self的理解 &#xff1a;一、self的位置是出现在哪里&#xff1f;首先&#xff0c;self是在类的方法中的&#xff0c;在调用此方法时&#xff0c;不用给self赋值&#xff0c;Python会自动给他赋值&#xff0c;而且这个值就是类的实例--对象本身。也可以将self换成别…

各种震撼的慢镜头,奇怪的知识又增加了!​

全世界只有3.14 % 的人关注了爆炸吧知识慢镜头&#xff08;高速摄影&#xff09;可能是现代最伟大的发明之一。从身边的日常到那些比较罕见的事物&#xff0c;慢镜头下看起来都比平时更酷&#xff01;喵星人接球这行云流水的动作&#xff0c;秒杀国足&#xff01;这是用多台风扇…

Dapr牵手.NET学习笔记:跨物理机负载均衡服务调用

dpar在同一台电脑上不能run 相同appid&#xff0c;这个在上篇说过&#xff0c;所以就用外部负载均衡nginx来对应&#xff0c;那在不同的host中跑同一服务&#xff0c;看看dapr内部的负载均衡是怎么实现的。说说现有的服务&#xff0c;两个服务&#xff0c;订单服务&#xff0c;…

电脑编程教学_2020太原数控车床电脑编程一对一实操教学不限学时

2020太原数控车床电脑编程一对一实操教学不限学时石家庄工之艺数培训学校培训‘数控技术员’ 学生时&#xff0c;拿到图纸和毛坯,能够自己的在数控机床上做出成品。实行教学&#xff0c;“小班授课&#xff0c;一对一的教&#xff0c;理论实践相结合&#xff0c;随到随学&#…

多功能复合机基于用户认证功能的实现过程详解

多功能复合机基于用户认证功能的实现方法 -----网络设备共享案例分析 公司需求&#xff1a;***是一家租售写字楼的服务性企业&#xff0c;主要是针对小型企业进行出租&#xff0c;房间有大有小&#xff0c;大的可以容纳5-10人&#xff0c;小的可以容纳1-4人左右。由于都是一些小…

商女不知亡国恨,一天到晚敲代码

满园春色关不住 一串代码飘出来。日照屏幕直冒烟, 遥看代码挂前川。春眠不觉晓&#xff0c;处处敲代码。春宵一刻值千金&#xff0c;完事起来敲代码。洛阳亲友如相问&#xff0c;就说我在敲代码。夜阑卧听风吹雨&#xff0c;做梦还在敲代码。举头望明月&#xff0c;低头敲代码。…

用python写简单爬虫,用Python写简单的爬虫

准备&#xff1a;1.扒网页&#xff0c;根据URL来获取网页信息importurllib.parseimporturllib.requestresponse urllib.request.urlopen("https://www.cnblogs.com")print(response.read())urlopen方法urlopen(url, data, timeout)url即为URL&#xff0c;data是访问U…

换种方式去分页(转)

为什么要换种方式分页&#xff0c;一个字&#xff1a;太慢了 分页要传入的参数&#xff0c;1&#xff1a;页号&#xff0c;2&#xff1a;行数 分页要取到的数据&#xff0c; 1&#xff1a;总行数&#xff0c;2&#xff1a;单页数据 http://www.cnblogs.com/mikedeng/p/be…

单元测试(二)基本使用争议篇

介绍常用的单元测试是测试方法、API等&#xff0c;下面我们来演示一下Xunit测试框架的简单使用&#xff0c;有些是为了演示而写的单元测试。最下面有反转&#xff0c;一定要看到最后操作创建单元测试项目本次文章还在原来项目的基础上进行操作&#xff0c;右键解决方案添加单元…

听说你趁我不在家,欺负我老婆?

1 听说你趁我不在家欺负我老婆了&#xff1f;▼2 当男生们聚在一起时他们都会做什么&#xff1f;▼3 其实我是广西人&#xff0c;每顿要嗦1吨粉▼4 山西人的饮水机里放的都是醋&#xff1f;▼5 可现实中又有几个总裁没有啤酒肚呢&#xff1f;▼6 开学考试&#xff0c;一考…

热像仪 二次开发 c++_一种全新的红外热像仪——“可编程红外热像仪”

如 今&#xff0c;红外热像仪对于很多人而言已经不是一个新鲜事物了&#xff0c;它利用红外探测器对被测目标的红外辐射进行探测&#xff0c;并加以光电转换和信号处理等手段&#xff0c;将被测目标的温度分布转换为我们人眼可以直观识别的图像。受益于这种温度可见的技术&…

RHEL5.3下MRTG+SNMP的搭建

一、MRTG的简介 Mrtg(Multi Router Traffic Grapher,MRTG)是一个监控网络链路流量负载的工具软件&#xff0c;它通过snmp协议从设备得到设备的流量信息&#xff0c;并将流量负载以包含PNG格式的图形的HTML文档方式显示给用户&#xff0c;以非常直观的形式显示流量负载(可以在网…

SQL Express自动备份

--第一步 --在master库中建立一个备份数据库的存储过程. USE master GO CREATE PROC p db_name sysname, --数据库名 bk_path NVARCHAR(1024) --备份文件的路径 AS IF ISNULL(db_name,) SET db_namedb_name() ; DECLARE dt VARCHAR(50) ; SET dtdb_name_CONVERT(V…

php server 连接字符串,sqlServer 数据库常用连接字符串

sqlServer 数据库常用连接字符串 用户名和密码验证的方式去连接到数据库服务器 add name"conStr" connectionString"Data Source服务器名;Initial Catalog数据库名; User Id用户名;Password密码"/ add name"conStr" connectionString"Serve…

linux下ip命令用法

配置数据转发&#xff0c;可以通过 1、路由转发即用用路由器实现&#xff1b; 2、使用NAT转发&#xff1b; 简单的说&#xff1a; 路由表内的信息只是指定数据包在路由器内的下一个去处。并不能改变数据包本身的地址信息。即它只是“换条路而已&#xff0c;目的地不变”&#x…