日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Python學習筆記之For循環用法詳解

系統 2086 0

本文實例講述了Python學習筆記之For循環用法。分享給大家供大家參考,具體如下:

Python 中的For循環

Python 有兩種類型的循環:for 循環和 while 循環。for 循環用來遍歷可迭代對象。

可迭代對象是每次可以返回其中一個元素的對象, 包括字符串、列表和元組等序列類型,以及字典和文件等非序列類型。還可以使用迭代器和生成器定義可迭代對象

For 循環示例:

            
# iterable of cities
cities = ['new york city', 'mountain view', 'chicago', 'los angeles']
# for loop that iterates over the cities list
for city in cities:
  print(city.title())


          

For 循環的組成部分:

  • 循環的第一行以關鍵字 for 開始,表示這是一個 for 循環
  • 然后是 iteration_variable in iterable ,表示正在被遍歷的是可迭代的對象,并且用迭代變量表示當前正在被處理的可迭代對象的元素。在此示例中,迭代變量 city 在第一次迭代時將是 “new york city”,在第二次迭代時將是 mountain view。
  • for 循環頭部始終以英文冒號 : 結束。
  • for 循環頭部之后的是在此 for 循環的每次迭代時運行的縮進代碼塊。在此塊中,我們可以使用迭代變量訪問當前正在被處理的元素的值。
  • 你可以隨意命名迭代變量。常見模式是為迭代變量和可迭代對象指定相同的名稱,但是分別使用單復數形式(例如 ‘city' 和 ‘cities')

For 循環創建和修改列表:

            
# Creating a new list
cities = ['new york city', 'mountain view', 'chicago', 'los angeles']
capitalized_cities = []
for city in cities:
  capitalized_cities.append(city.title())


          

修改列表稍微復雜些,需要使用新的函數: range() :

range() 是一個內置函數,用于創建不可變的數字序列。它有三個參數,必須都為整數。 range(start=0, stop, step=1)

  • start 是該序列的第一個數字, stop 比該序列的最后一個數字大 1, step 是該序列中每個數字之間的差。如果未指定的話, start 默認為 0, step 默認為 1(即上述 =0 和 =1)。
  • 如果你在 range() 的括號里指定一個參數,它將用作 stop 的值,另外兩個參數使用默認值。E.g. list(range(4)) 返回 [0, 1, 2, 3]
  • 如果你在 range() 的括號里指定兩個參數,它們將用作 start stop 的值, step 將使用默認值。 E.g. list(range(2, 6)) 返回 [2, 3, 4, 5]
  • 注意 ,在這些示例中,我們將 range 封裝在列表中。因為 range 本身的輸出是一個 range 對象。我們可以通過將其轉換為列表或在 for 循環中遍歷它,查看 range 對象中的值集合。

我們可以使用 range 函數為 cities 列表中的每個值生成索引。這樣我們便可以使用 cities[index] 訪問列表中的元素,以便直接修改 cities 列表中的值。

            
cities = ['new york city', 'mountain view', 'chicago', 'los angeles']
for index in range(len(cities)):
  cities[index] = cities[index].title()


          

雖然修改列表是 range 函數的一個用途,但是并非只有這一個用途。你將經常使用 range 和 for 循環重復某個操作一定的次數。

            
for i in range(3)
  print("Hi!")


          

For 循環[相關練習]

寫一個遍歷 names 列表以創建 usernames 列表的 for 循環。要為每個姓名創建用戶名,使姓名全小寫并用下劃線代替空格。對以下列表運行 for 循環:

            
names = ["Joey Tribbiani", "Monica Geller", "Chandler Bing", "Phoebe Buffay"]


          

應該會創建列表:

            
usernames = ["joey_tribbiani", "monica_geller", "chandler_bing", "phoebe_buffay"]


          

解決方案如下:

            
names = ["Joey Tribbiani", "Monica Geller", "Chandler Bing", "Phoebe Buffay"]
usernames = []
# write your for loop here
for name in names:
  usernames.append(name.lower().replace(" ", "_"))
print(usernames)


          

假設我們不想創建新的列表,而是修改 names 列表本身,并編寫以下代碼。下面的代碼有什么作用?

            
names = ["Joey Tribbiani", "Monica Geller", "Chandler Bing", "Phoebe Buffay"]
for name in names:
  name = name.lower().replace(" ", "_")
print(names)


          

分析: 這段代碼沒有效果。 在每次迭代時,name 變量設為從該列表中獲取的一個字符串。然后賦值語句創建一個新的字符串 (name.lower().replace(" ", "_")) 并將 name 變量更改為該字符串。要修改該列表,你必須使用 range 對該列表本身操作。

寫一個使用 range() 遍歷 usernames 中的職位以修改該列表的 for 循環。和上一道練習一樣,將每個姓名改成全小寫形式并用下劃線代替空格。運行 for 循環后,以下列表

            
usernames = ["Joey Tribbiani", "Monica Geller", "Chandler Bing", "Phoebe Buffay"]


          

應該更改為:

            
usernames = ["joey_tribbiani", "monica_geller", "chandler_bing", "phoebe_buffay"]


          

解決方案如下:

            
usernames = ["Joey Tribbiani", "Monica Geller", "Chandler Bing", "Phoebe Buffay"]
# escreva seu loop for aqui
for index in range(len(usernames)):
  usernames[index] = usernames[index].lower().replace(" ", "_")
print(usernames)


          

標記計數器: 寫一個 for 循環,用于遍歷字符串列表 tokens 并數一下有多少個 XML 標記。

解決方案如下:

            
tokens = ['
            
              ', 'Hello World!', '
            
            ']
count = 0
# write your for loop here
for t in tokens:
  if t[0] == '<' and t[-1] == '>':
    count += 1
print(count)


          

創建 HTML 列表: 寫一個 for 循環,用于遍歷字符串列表并創建單個字符串 html_str,它是一個 HTML 列表。例如,如果列表是 items = ['first string', 'second string] ,輸出 html_str 應該會輸出:

            
  • first string
  • second string

解決方案如下:

            
items = ['first string', 'second string']
html_str = "
            
    \n" for item in items: html_str += "
  • " + item + "
  • \n" html_str += "
" print(html_str)

關于Python相關內容感興趣的讀者可查看本站專題:《Python函數使用技巧總結》、《Python面向對象程序設計入門與進階教程》、《Python數據結構與算法教程》、《Python字符串操作技巧匯總》、《Python編碼操作技巧總結》及《Python入門與進階經典教程》

希望本文所述對大家Python程序設計有所幫助。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 峨山| 临海市| 蓬溪县| 嵩明县| 大石桥市| 年辖:市辖区| 翼城县| 永吉县| 涞水县| 彭水| 安仁县| 嘉黎县| 武平县| 伊吾县| 明溪县| 定边县| 汤原县| 山阴县| 祁阳县| 南宁市| 华蓥市| 天峻县| 奉贤区| 莒南县| 泸水县| 湘西| 武穴市| 修文县| 大姚县| 会泽县| 新宁县| 尉氏县| 宜丰县| 龙泉市| 延长县| 怀宁县| 鄂尔多斯市| 如东县| 长武县| 贵溪市| 平罗县|