欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python學(xué)習(xí)筆記之For循環(huán)用法詳解

 更新時(shí)間:2019年08月14日 11:14:08   作者:Johnny丶me  
這篇文章主要介紹了Python學(xué)習(xí)筆記之For循環(huán)用法,結(jié)合實(shí)例形式詳細(xì)分析了Python for循環(huán)的功能、原理、用法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下

本文實(shí)例講述了Python學(xué)習(xí)筆記之For循環(huán)用法。分享給大家供大家參考,具體如下:

Python 中的For循環(huán)

Python 有兩種類型的循環(huán):for 循環(huán)和 while 循環(huán)。for 循環(huán)用來遍歷可迭代對(duì)象。

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

For 循環(huán)示例:

# 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 循環(huán)的組成部分:

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

For 循環(huán)創(chuàng)建和修改列表:

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

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

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

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

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

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

雖然修改列表是 range 函數(shù)的一個(gè)用途,但是并非只有這一個(gè)用途。你將經(jīng)常使用 range 和 for 循環(huán)重復(fù)某個(gè)操作一定的次數(shù)。

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

For 循環(huán)[相關(guān)練習(xí)]

寫一個(gè)遍歷 names 列表以創(chuàng)建 usernames 列表的 for 循環(huán)。要為每個(gè)姓名創(chuàng)建用戶名,使姓名全小寫并用下劃線代替空格。對(duì)以下列表運(yùn)行 for 循環(huán):

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

應(yīng)該會(huì)創(chuàng)建列表:

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)

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

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

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

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

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

應(yīng)該更改為:

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)

標(biāo)記計(jì)數(shù)器: 寫一個(gè) for 循環(huán),用于遍歷字符串列表 tokens 并數(shù)一下有多少個(gè) XML 標(biāo)記。

解決方案如下:

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

創(chuàng)建 HTML 列表: 寫一個(gè) for 循環(huán),用于遍歷字符串列表并創(chuàng)建單個(gè)字符串 html_str,它是一個(gè) HTML 列表。例如,如果列表是 items = ['first string', 'second string],輸出 html_str 應(yīng)該會(huì)輸出:

<ul>
<li>first string</li>
<li>second string</li>
</ul>

解決方案如下:

items = ['first string', 'second string']
html_str = "<ul>\n"
for item in items:
  html_str += "<li>" + item + "</li>\n"
html_str += "</ul>"
print(html_str)

關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python函數(shù)使用技巧總結(jié)》、《Python面向?qū)ο蟪绦蛟O(shè)計(jì)入門與進(jìn)階教程》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python字符串操作技巧匯總》、《Python編碼操作技巧總結(jié)》及《Python入門與進(jìn)階經(jīng)典教程

希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • 利用Python進(jìn)行金融數(shù)據(jù)分析的全過程

    利用Python進(jìn)行金融數(shù)據(jù)分析的全過程

    金融數(shù)據(jù)分析在現(xiàn)代金融行業(yè)中扮演著至關(guān)重要的角色,通過使用Python編程語言,我們可以對(duì)大量金融數(shù)據(jù)進(jìn)行處理、分析和可視化,從而獲得有價(jià)值的洞察,本篇文章將介紹如何使用Python進(jìn)行金融數(shù)據(jù)分析,需要的朋友可以參考下
    2024-08-08
  • 跟老齊學(xué)Python之使用Python操作數(shù)據(jù)庫(1)

    跟老齊學(xué)Python之使用Python操作數(shù)據(jù)庫(1)

    本文詳細(xì)講述了使用python操作數(shù)據(jù)庫所需要了解的知識(shí)以及準(zhǔn)備工作,十分的詳盡,這里推薦給想學(xué)習(xí)python的小伙伴。
    2014-11-11
  • Python中tuple類型的使用

    Python中tuple類型的使用

    在Python中,元組(tuple)是一種不可變的序列類型,可以包含多個(gè)值,這些值可以是不同類型的,本文主要介紹了Python中tuple類型的使用,感興趣的可以了解一下
    2023-12-12
  • python range()函數(shù)取反序遍歷sequence的方法

    python range()函數(shù)取反序遍歷sequence的方法

    今天小編就為大家分享一篇python range()函數(shù)取反序遍歷sequence的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • pyqt5 獲取顯示器的分辨率的方法

    pyqt5 獲取顯示器的分辨率的方法

    今天小編就為大家分享一篇pyqt5 獲取顯示器的分辨率的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06
  • Python之進(jìn)行URL編碼案例講解

    Python之進(jìn)行URL編碼案例講解

    這篇文章主要介紹了Python之進(jìn)行URL編碼案例講解,本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • Python的Flask框架中實(shí)現(xiàn)簡單的登錄功能的教程

    Python的Flask框架中實(shí)現(xiàn)簡單的登錄功能的教程

    這篇文章主要介紹了Python的Flask框架中實(shí)現(xiàn)簡單的登錄功能的教程,登錄是各個(gè)web框架中的基礎(chǔ)功能,需要的朋友可以參考下
    2015-04-04
  • 爬蟲框架 Feapder 和 Scrapy 的對(duì)比分析

    爬蟲框架 Feapder 和 Scrapy 的對(duì)比分析

    本篇文章在源碼層面比對(duì) feapder、scrapy 、scrapy-redis 的設(shè)計(jì),閱讀本文后,會(huì)加深您對(duì) scrapy 以及 feapder 的了解,以及為什么推薦使用 feapder,剛興趣的朋友可以參考下面文章內(nèi)容
    2021-09-09
  • Python實(shí)現(xiàn)從PPT中導(dǎo)出高分辨率圖片

    Python實(shí)現(xiàn)從PPT中導(dǎo)出高分辨率圖片

    這篇文章主要為大家分享了一個(gè)實(shí)用腳本——如何利用Python實(shí)現(xiàn)從PPT中導(dǎo)出高分辨率(高 dpi)的圖片,文中的示例代碼講解詳細(xì),感興趣的可以了解一下
    2023-05-05
  • windows下搭建python scrapy爬蟲框架步驟

    windows下搭建python scrapy爬蟲框架步驟

    在本文內(nèi)容里小編給大家分享的是關(guān)于windows下搭建python scrapy爬蟲框架的教學(xué)內(nèi)容,需要的朋友們學(xué)習(xí)下。
    2018-12-12

最新評(píng)論