热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python的for循环详细

#循环结构之for循环##1.与while循环的对比```pythonlist1[jakson,yee,xxxx,封闭货车]在while循环中,需要索引取值num0whilenu

> # 循环结构之for循环

## 1.与 while 循环的对比

```python
list1 = ['jakson','yee','xxxx','封闭货车']
'''
在while循环中,需要索引取值
'''
num = 0
while num <4
print(l1[num])
num += 1
'''
for循环能够做到的事while循环都可以做到
但是for循环的语法结构更加简单 尤其擅长循环取值
'''
```

## 2.语法结构

```python
for 变量名 in 可迭代对象 : # (字符串,字典,列表,元祖)
循环体代码
'''
变量名的命名:如果带取值的数据有明确的指向,最好见名字知意
for student_name in 学生姓名名单
for addr in 地址信息
如果没有明确的指向 可以使用常见的字母
i j k m n item...等等
'''
```

## 3.常见取值操作

```python
# 列表
list1 = ['jakson','yee','xxxx','封闭货车']
for i in list:
print(i)

# 字典
user_dict = {'username':'jakson','firstname':'yee','age':18,'pwd'=123}
""" for 循环字典 默认只能取到字典的key"""
for i in user_dict:
print()

# 字符串
desc = 'hello python!'
""" for 循环字符串 默认每次取单个字符"""
for i in desc:
print(i)

# 元祖
t = (11,22,33,55)
""" for 循环元组数据与列表一致 默认单个数据值"""
for i in t:
print(i)

# 集合
s1 = {11,22,33,55}
""" for 循环集合数据与列表一致 默认单个数据值"""
for i in s1:
print(i)
```

 

## 4.重要知识

### 1.range方法

​ range可以看成是一个能够帮助我们快速产生一个包含多个数据值的列表

```python
# 如果括号内只有一个数字 那么就是从 0 开始到该数字结束(顾头不顾尾,包含0不包含5)
for i in range(5):
print(i)

# 如果括号内有两个数字,那么从第一个数字开始(包含),第二个数字结束(不包含)
for i in range (1,10):
print(i)

#括号内有三个数字,最后一个数字是步长(也就是间隔数)
for i in range(0,101,5):
print(i)

"""
在python2中有两个
range()
会直接产生一个列表,当数据很大时可能会造成内存外溢
xrange()
与python3里的range用法相同

在python3中只有一个
range()
什么时候需要什么时候创建,节省内存
"""

```

## range方法实操

```python
# 网络爬虫:python代码模拟网络请求获取数据
#很多网址的数据都不止一页,所以有时候需要通过代码模拟

博客园多页规律
https://www.cnblogs.com/ #第一页
https://www.cnblogs.com/#p2 第二页
https://www.cnblogs.com/#p3 第三页
https://www.cnblogs.com/#p4 第四页
可见其规律在于#p后面的2、3、4...

#所以将前面的内容定义一个模板
base_url='https://www.cnblogs.com/#p'
for i in range(1,101):
print(base_url % 1)

```

## for + break

```python
# 1-10 7结束
for i in range(1,11):
if i == 7:
break
print(i)
"""
break也能够结束所在的那一层for循环
"""
```

## for + continue

```python
# 1-10 7跳过
for i in range(1, 11):
if i == 7:
continue
print(i)
"""
continue也能够结束所在的那一次for循环 直接开始下一次
"""
```

## for + else

```python
for i in range(10):
print(i)
if i == 5:
break
else:
print('嘿嘿嘿 猜猜我什么时候执行')
"""
else配合for一起使用 当for循环没有被强制结束的情况下 循环体结束之后运行else子代码
"""
```

 

> # 作业

> ### 作业一

```python
# 1.计算1-100所有的数之和
h = 0
for i in range(1, 101):
h = h + i
print(h)
```

 

> ### 作业二

```python
# 2.判断列表中数字2出现的次数
l1 = [11, 2, 3, 2, 2, 1, 2, 1, 2, 3, 2, 3, 2, 3, 4, 3, 2, 3, 2, 2, 2, 2, 3, 2]
count = 0
for i in l1:
if i == 2:
count += 1
print(count)
```

 

> ### 作业三

```python
# 3.编写代码自动生成所有页网址
gu = 'https://movie.douban.com/top250?start=%s&filter='
for i in range(0, 251, 25):
print(gu % i)

```

 

> ### 作业四

```python
# 4.编写代码打印图形(ps:for循环嵌套)
for t in range(4):
for i in range(5):
print('*', end='')
print()
```

 



推荐阅读
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 学习SLAM的女生,很酷
    本文介绍了学习SLAM的女生的故事,她们选择SLAM作为研究方向,面临各种学习挑战,但坚持不懈,最终获得成功。文章鼓励未来想走科研道路的女生勇敢追求自己的梦想,同时提到了一位正在英国攻读硕士学位的女生与SLAM结缘的经历。 ... [详细]
  • 本文介绍了在Python3中如何使用选择文件对话框的格式打开和保存图片的方法。通过使用tkinter库中的filedialog模块的asksaveasfilename和askopenfilename函数,可以方便地选择要打开或保存的图片文件,并进行相关操作。具体的代码示例和操作步骤也被提供。 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • SpringBoot uri统一权限管理的实现方法及步骤详解
    本文详细介绍了SpringBoot中实现uri统一权限管理的方法,包括表结构定义、自动统计URI并自动删除脏数据、程序启动加载等步骤。通过该方法可以提高系统的安全性,实现对系统任意接口的权限拦截验证。 ... [详细]
  • 目录实现效果:实现环境实现方法一:基本思路主要代码JavaScript代码总结方法二主要代码总结方法三基本思路主要代码JavaScriptHTML总结实 ... [详细]
  • 数据结构系列1 数组和链表
    数组,链表,l ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • Java容器中的compareto方法排序原理解析
    本文从源码解析Java容器中的compareto方法的排序原理,讲解了在使用数组存储数据时的限制以及存储效率的问题。同时提到了Redis的五大数据结构和list、set等知识点,回忆了作者大学时代的Java学习经历。文章以作者做的思维导图作为目录,展示了整个讲解过程。 ... [详细]
  • 本文介绍了如何找到并终止在8080端口上运行的进程的方法,通过使用终端命令lsof -i :8080可以获取在该端口上运行的所有进程的输出,并使用kill命令终止指定进程的运行。 ... [详细]
  • 树莓派Linux基础(一):查看文件系统的命令行操作
    本文介绍了在树莓派上通过SSH服务使用命令行查看文件系统的操作,包括cd命令用于变更目录、pwd命令用于显示当前目录位置、ls命令用于显示文件和目录列表。详细讲解了这些命令的使用方法和注意事项。 ... [详细]
  • 本文介绍了C++中省略号类型和参数个数不确定函数参数的使用方法,并提供了一个范例。通过宏定义的方式,可以方便地处理不定参数的情况。文章中给出了具体的代码实现,并对代码进行了解释和说明。这对于需要处理不定参数的情况的程序员来说,是一个很有用的参考资料。 ... [详细]
  • 本文详细介绍了PHP中与URL处理相关的三个函数:http_build_query、parse_str和查询字符串的解析。通过示例和语法说明,讲解了这些函数的使用方法和作用,帮助读者更好地理解和应用。 ... [详细]
author-avatar
菜菜ING
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有