![Python数据分析从小白到专家](https://wfqqreader-1252317822.image.myqcloud.com/cover/745/38209745/b_38209745.jpg)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
3.3.4 循环语句:while和for
当while语句运行时,只要while后面跟的值为True,就一直循环,直到值为False时才退出循环。可以理解为while是循环着的if,因为if只判断一次,而while判断多次。按照这个逻辑,while True就是一个会一直循环下去的死循环,除非用KeyBoardInterrupt打断(即按Ctrl+C快捷键),示例如下:
![](https://epubservercos.yuewen.com/ED1E6A/20118172701012106/epubprivate/OEBPS/Images/40923_60_1.jpg?sign=1736992861-sVHvyyLU6Giu4KSbeb4oZeprcIXma4s9-0-3d463730d52450b3676d3452580026c2)
输出结果:
![](https://epubservercos.yuewen.com/ED1E6A/20118172701012106/epubprivate/OEBPS/Images/40923_60_2.jpg?sign=1736992861-e206bSXgsMavFyVTibgVDAHKFqcfPX0S-0-be7fe255a8e1bdf46e34703d1591f31d)
while语句比较简单实用。下面介绍for循环语句及常见的range()方法。range()方法可以生成指定的迭代器,使得for-in语句可以更加方便地运行。range()方法的原型如下:
![](https://epubservercos.yuewen.com/ED1E6A/20118172701012106/epubprivate/OEBPS/Images/40923_60_3.jpg?sign=1736992861-gFtof5YzMcUpwEYJQhCPUrjDrGO8sCuX-0-6a8f2324318ea8728f9e92925dbc7eed)
其中,startNumber代表起始数字,endNumber代表截止数字,stepNumber代表步长,步长默认为1(可以省略不写)。起始数字也可以省略不写,默认为第一个序号(即0),示例如下:
![](https://epubservercos.yuewen.com/ED1E6A/20118172701012106/epubprivate/OEBPS/Images/40923_60_4.jpg?sign=1736992861-VBAjKm27uvPi92UzPfqUUdpK9rGVWfJX-0-99d34179bbaa32500b1ec44d544e643d)
输出结果:
![](https://epubservercos.yuewen.com/ED1E6A/20118172701012106/epubprivate/OEBPS/Images/40923_61_1.jpg?sign=1736992861-2ZsQnodaHQGnnpPhZH4rEeeFSCak6VMp-0-d2e73d1bfb56c491b9a5131c3c11b17f)
for语句还可以用作列表、元组等迭代器,示例如下:
![](https://epubservercos.yuewen.com/ED1E6A/20118172701012106/epubprivate/OEBPS/Images/40923_61_2.jpg?sign=1736992861-FtvnyGEwf23zNJb1AGVO6rl6mzGVvCAE-0-af20fe241126c15fdddd334e70b46c00)
输出结果:
![](https://epubservercos.yuewen.com/ED1E6A/20118172701012106/epubprivate/OEBPS/Images/40923_61_3.jpg?sign=1736992861-RQ5YUEiUAzyJM75cldgZj5RoxZTkVqGr-0-872f337c2603b99d469b1f5891dc3d58)
![](https://epubservercos.yuewen.com/ED1E6A/20118172701012106/epubprivate/OEBPS/Images/40923_62_1.jpg?sign=1736992861-OKx1yusu8rRdSOq4HUl8XVZ6XBEJCoYm-0-f0144a2ca220f237f9bc9f33e60218c8)