python3循环一直到一个值结束_一步一步学Python3(小学生也适用) 第十七篇:循环语句for in循环...

21a45ab8a7d82c026b1df0414c8ef3af.png

一、Python for in循环

Python for in 循环,是用来遍历任何数据序列,如一个列表,一个字符串,一个字典,一个元组等。

for in 循环的一般语法如下:

 for  item in 序列:语句块else:语句块

for in 字符串:把每个字符循环出来

 '''字符串:把每个字符循环出来'''str1 = '老树Python''''把字符串str1元素进行循环,每循环出一个元素,就把该元素赋值给item'''for item in str1:print(item)运行结果:老树Python​

for in 列表:把列表中每个元素循环出来

 '''for in 列表'''list1 = ['Python','Java','PHP','C#']​''' 循环list1中的每个元素,然后循环到的元素赋值给item'''for item in list1:           print(item)运行结果:PythonJavaPHPC#​

for in 字典:把字典中每对键值循环出来

我们在第十章学习字典时,知道可以通过dict.keys()和dict.values()求得字典的所有key和value.

那么我们可以通过把dict.keys()循环出单个key,然后通过dict['key']来求得key,value对应的值

同时,我们直接 for in dict 循环出来的也是key

 '''for in 字典:遍历key值'''​dict1 = {'Lim':'98','Tom':'99','Jim':'89'}print('所有keys:',dict1.keys())print('for in dict1.keys()')for key in dict1.keys():print(key + ':' + dict1[key])​print('直接for in dict1')for key in dict1:print(key + ':' + dict1[key])运行结果:所有keys: dict_keys(['Lim', 'Tom', 'Jim'])for in dict1.keys()Lim:98Tom:99Jim:89直接for in dict1Lim:98Tom:99Jim:89

可以看出上述两个for in 循环运行的结果一致

 '''for in 字典:遍历value'''dict1 = {'Lim': '98', 'Tom': '99', 'Jim': '89'}print('所有values:', dict1.values())​for value in dict1.values():print(value)​运行结果:989989

遍历字典键值key,value项

 '''for in 字典:遍历value'''dict1 = {'Lim': '98', 'Tom': '99', 'Jim': '89'}print('dict1.items是:',dict1.items())for kv in dict1.items():           #dict1.items()print(kv)

运行结果:

 dict1.items是: dict_items([('Lim', '98'), ('Tom', '99'), ('Jim', '89')])('Lim', '98')('Tom', '99')('Jim', '89')

遍历字典键值

 '''for in 字典:遍历key,value'''dict1 = {'Lim': '98', 'Tom': '99', 'Jim': '89'}​for key,value in dict1.items():  # dict1.items()print(key + ':' + value)print('上下两个方法效果是一样的')for (key,value) in dict1.items():print(key + ':' + value)​

运行的结果:

 Lim:98Tom:99Jim:89上下两个方法效果是一样的Lim:98Tom:99Jim:89

二、range()函数

range()函数为python内置函数,用于生成一系列的连续的整数,其语法格式为:

 range(start,end,step)

注:start指的是计数起始值,默认为0;end指的是计数结束值,但不包括end; step是步长,默认为1,不可以为0.

range()方法生成一段左闭右开的整数范围。

在使用range()函数时,

如果只有一个参数,就表示end,从0开始;

如果有两个参数,就表示start和end.

如果有三个参数,最后一个就表示步长。

它接收的参数必须是整数,可以是负数,但不能是浮点数或其它类型。

range()是不可变的序列类型,可以进行判断元素、查找元素、切片等操作,但不能修改元素。

 rg = range(1,8)print(rg)print(rg[0])print(rg[1:4])print(rg[:-3])

运行结果:

 range(1, 8)1range(2, 5)range(1, 5)rg = range(1,8)rg[2]=2                    

运行结果:

  rg[2]=2TypeError: 'range' object does not support item assignment

可以看出不支持修改

它会生成数列,这样我们就会可以来遍历数字序列。

 for num in range(6):print(num)运行结果:012345

step为-5

 rg = range(-15,-35,-5)for num in rg:print(num)

运行结果:

 -15-20-25-30

这述这个例子中,大家可以试着把-15改成-65看看运行结果。然后继续再把-5改成5看看运行结果。当看明白改动后的变化,你就明白了,start,end谁大谁小,以及step是正数不是负数。

我们刚才print(range(1,8)),打印出来的结果是: range(1,8),而不是列表类型。

我们可以用list(range(1,8))直接把range()变为list类型

 rg = range(1,8)print(rg)print(list(rg))

运行的结果:

 range(1, 8)[1, 2, 3, 4, 5, 6, 7]

结束语:

这一篇我们学习了for in 循环字符串,列表,字典等。重点在循环字典时,如何取得key,value值等。

同时我们对Python内置函数range()进行了了解。这个函数将在以后的项目中使用得比较多。


原创不易,喜欢就给个赞,点个关注吧!

更多的内容可以关注公众号:老树Python

推荐阅读:

老树Python:一步一步学Python3(小学生也适用) 第十六篇:循环语句While循环​zhuanlan.zhihu.com
zhihu-card-default.svg
老树Python:一步一步学Python3(小学生也适用) 第十五篇:条件判断​zhuanlan.zhihu.com
19933909f4f72bcfe53900233b8f7a47.png
老树Python:一步一步学Python3(小学生也适用) 第十四篇: 集合Set类型​zhuanlan.zhihu.com
547deb29b526562f2704099e0b657edd.png
老树Python:一步一步学Python3(小学生也适用) 第十三篇: 字典Dict类型​zhuanlan.zhihu.com
fe13c53a02cc805fb2176fb51a6ff37f.png
老树Python:一步一步学Python3(小学生也适用) 第十二篇: 元组tuple类型​zhuanlan.zhihu.com
9a62eedde2e3e303c8ca3b7b0c879d2f.png

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

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

相关文章

设置Jupyter notebook 默认工作路径,修改Jupyter notebook 默认浏览器为Chrome

这里写目录标题一 设置Jupyter notebook 默认工作路径二 修改Jupyter notebook 默认浏览器为Chrome一 设置Jupyter notebook 默认工作路径 安装好anaconda 后,jupyter notebook默认是有安装好的。在windows的菜单栏找到anaconda目录,如下图 鼠标右键点…

python调用c#注意事项_Python调用C#编写的DLL

起因是工作中需要用的开发编写的DLL,但是它是使用C#编写的,本人不想使用C#去写测试代码,所以需要使用Python来掉这个DLL内的方法 就用这个就很好,不要问为啥不用微软的Ironpython和别的啥,好用就行了,解决问…

jquery实战--定宽

大家有没有遇到过一个问题,就是一个列表,或是一段文字过多时,截取多余的部分用省略号,好吧,证明你实力的时候到了,我下面先分解一下方法,再用插件写出来,首先我们说的是,用到的第一个…

struts2 Action获取表单数据

1.通过属性驱动式 1.首先设置 表单中的数据的name值 如&#xff1a;<input type"text" name"username" value""> 2.你用的是struts2&#xff0c;那么就在java类中写一个变量&#xff1a;变量名和页面上的name值一致 并有这个变量的get 和…

python 计算器 eval ctf_CTF逆向--.NET与Python篇

题目(来源&#xff1a;Jarvis-OJ)&#xff1a;Classical CrackmeClassical CrackMe2FindKeyLoginClassical Crackme首先查壳没有壳&#xff0c;不过发现这是一个.net的程序&#xff0c;将其拖进dnSpy中&#xff0c;找到主程序&#xff0c;同时发现关键代码&#xff0c;如下所示…

2016年秋季个人阅读计划

阅读书目&#xff1a;《软件需求十步走》 读后感发表日期&#xff1a;阅读书目&#xff1a;《用户故事与敏捷方法》 读后感发表日期&#xff1a;第一篇&#xff1a;10月1日 第二篇&#xff1a;10月3日 第三篇&#xff1a;10月7日 第四篇&#xff1a;10月15日 第五篇&#xff1a…

第10章 Python 数字图像处理(DIP) - 图像分割 基础知识 标准差分割法

This Chapter is all about image segmentation. I still not finished whole chapter, but here try to publish some for reference. 这里写目录标题基础知识import sys import numpy as np import cv2 import matplotlib import matplotlib.pyplot as plt import PIL from …

OFBiz的探索进阶

主要参照https://cwiki.apache.org/OFBIZ/ofbiz-tutorial-a-beginners-development-guide.html这个教程&#xff0c;实现的过程教程上很详细&#xff0c;故这里不多说 还参考了下http://www.hotwaxmedia.com/apache-ofbiz-blog/ofbiz/ofbiz-tutorials/ofbiz-tutorial-building-…

python3语法都相同吗_python2 与 python3 语法区别--转

原文地址&#xff1a;http://old.sebug.net/paper/books/dive-into-python3/porting-code-to-python-3-with-2to3.html 使用2to3将代码移植到Python 3 ❝ Life is pleasant. Death is peaceful. It’s the transition that’s troublesome. ❞ — Isaac Asimov (attributed) 概…

对GCD的一些理解和实践

对GCD的一些理解和实践GCD GCD&#xff0c;全程Grand Central Dispatch&#xff0c;是苹果为了多核并行提出的解决方案。它是使用C语言实现&#xff0c;但是由于用了block来处理回调&#xff0c;所以使用起来十分方便。并且GCD会自动管理线程的生命周期&#xff0c;不需要我们去…

python scrapy爬虫遇见301_在Pycharm中运行Scrapy爬虫项目的基本操作

目标在Win7上建立一个Scrapy爬虫项目&#xff0c;以及对其进行基本操作。运行环境&#xff1a;电脑上已经安装了python(环境变量path已经设置好)&#xff0c;以及scrapy模块&#xff0c;IDE为Pycharm 。操作如下&#xff1a;一、建立Scrapy模板。进入自己的工作目录&#xff0c…

[Buzz Today]2012.08.08

# Dark Reign 2 源代码现身Google Code Pandemic工作室开发的即时战略游戏《Dark Reign 2》源代码被泄露到了Google Code http://code.google.com/p/darkreign2/ # Warsow 1.0发布 Set in a futuristic cartoonish world, Warsow is a completely free fast-paced first-person…

PyTorch训练中Dataset多线程加载数据,比Dataloader里设置多个workers还要快

PyTorch训练中Dataset多线程加载数据&#xff0c;而不是在DataLoader 背景与需求 现在做深度学习的越来越多人都有用PyTorch&#xff0c;他容易上手&#xff0c;而且API相对TF友好的不要太多。今天就给大家带来最近PyTorch训练的一些小小的心得。 大家做机器学习、深度学习都…

Trading

http://v.youku.com/v_show/id_XMTA0OTcxMjgw.html?fromy1.2-1-87.3.8-1.1-1-1-7 转载于:https://www.cnblogs.com/wangjianping/p/3705524.html

算法9---二叉树的遍历不用栈和递归

二叉树的遍历不用栈和递归 转自&#xff1a;ACM之家 http://www.acmerblog.com/inorder-tree-traversal-without-recursion-and-without-stack-5988.html我们知道&#xff0c;在深度搜索遍历的过程中&#xff0c;之所以要用递归或者是用非递归的栈方式&#xff0c;参考二叉树非…

python调用摄像头人脸识别代码_利用face_recognition,dlib与OpenCV调用摄像头进行人脸识别...

用已经搭建好 face_recognition&#xff0c;dlib 环境来进行人脸识别 未搭建好环境请参考&#xff1a; 使用opencv 调用摄像头 import face_recognition import cv2 video_capture cv2.videocapture(0) # videocapture打开摄像头&#xff0c;0为笔记本内置摄像头&#xff0c;1…

python列表批量 修改_python实现多进程按序号批量修改文件名的方法示例

本文实例讲述了python实现多进程按序号批量修改文件名的方法。分享给大家供大家参考&#xff0c;具体如下&#xff1a;说明文件名命名方式如图&#xff0c;是数字序号开头&#xff0c;但是中间有些文件删掉了&#xff0c;序号不连续&#xff0c;这里将序号连续起来&#xff0c;…

Struts1 tag

标签库&#xff1a; a) struts框架下的struts标签库 b) sun jstl c标签库 作用: 1) jsp 和 java代码分离 -- 自定义标签 用标签来替代Java的代码 2) struts标签 能够和struts-config.xml actionForm等特有的对象进行交互 stru…

“multiprocessing\spawn.py”, line 105, in spawn_main错误与解决方法

记录一个不知名的错误错误解决方法OS&#xff1a; Windows 10 错误非常的长&#xff0c;以至于&#xff0c;我也没有什么耐心去看&#xff0c;看了前面几行&#xff0c;应该是多线程引起的。下面太长&#xff0c;可以选择不看。 错误 Traceback (most recent call last): Trac…

hpunix下11gRac的安装

一.检查环境 1.操作系统版本# uname -a 2.补丁包三大补丁包#swlist -l bundle|grep QPKAPPS#swlist -l bundle|grep QPKBASE#swlist -l bundle|grep HWEnable11i #swlist -l patch -a supersedes|grep PHKL_XXXXX检查是否已有或是已被替代For HP-UX 11i V3 (11.31): PHCO_40381…