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.pswp.cn/news/260528.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/260528.shtml
英文地址,請注明出處:http://en.pswp.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…