国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

11個Python循環(huán)技巧

這篇具有很好參考價值的文章主要介紹了11個Python循環(huán)技巧。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

本文分享自華為云社區(qū)《Python中的循環(huán)技巧指南》,作者:檸檬味擁抱。

當(dāng)我們處理數(shù)據(jù)時,有時候需要創(chuàng)建多個列表以存儲不同類型或不同條件下的數(shù)據(jù)。在Python中,我們可以利用循環(huán)來快速、高效地創(chuàng)建這些列表。本文將介紹如何使用循環(huán)在Python中創(chuàng)建多個列表,并提供代碼實例。

python用循環(huán)新建多個列表

在Python中,我們可以使用列表推導(dǎo)式或循環(huán)結(jié)合條件語句來創(chuàng)建多個列表。下面是一些常見的場景和對應(yīng)的代碼示例:

1. 創(chuàng)建固定數(shù)量的空列表

假設(shè)我們需要創(chuàng)建多個空列表,可以使用列表推導(dǎo)式和循環(huán):

# 使用列表推導(dǎo)式創(chuàng)建多個空列表
num_lists = 5
empty_lists = [[] for _ in range(num_lists)]

print(empty_lists)

這將創(chuàng)建一個包含5個空列表的列表。

2. 根據(jù)條件創(chuàng)建多個列表

有時候,我們需要根據(jù)特定條件創(chuàng)建不同的列表。例如,我們想將奇數(shù)和偶數(shù)分別存儲在兩個列表中:

# 創(chuàng)建奇數(shù)和偶數(shù)列表
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
odd_numbers = []
even_numbers = []

for num in numbers:
    if num % 2 == 0:
        even_numbers.append(num)
    else:
        odd_numbers.append(num)

print("奇數(shù)列表:", odd_numbers)
print("偶數(shù)列表:", even_numbers)

這將根據(jù)數(shù)字的奇偶性創(chuàng)建兩個列表。

3. 根據(jù)字符串長度創(chuàng)建多個列表

有時候,我們需要根據(jù)字符串的長度來將字符串分類并存儲在不同的列表中:

# 根據(jù)字符串長度創(chuàng)建多個列表
words = ["apple", "banana", "orange", "pear", "grape", "kiwi"]
short_words = []
medium_words = []
long_words = []

for word in words:
    if len(word) < 5:
        short_words.append(word)
    elif len(word) < 7:
        medium_words.append(word)
    else:
        long_words.append(word)

print("短單詞列表:", short_words)
print("中等長度單詞列表:", medium_words)
print("長單詞列表:", long_words)

這將根據(jù)字符串的長度將單詞分別存儲在三個不同的列表中。

4. 根據(jù)數(shù)據(jù)類型創(chuàng)建多個列表

有時候,我們需要根據(jù)數(shù)據(jù)的類型將其存儲在不同的列表中。例如,我們想將整數(shù)、浮點數(shù)和字符串分別存儲在不同的列表中:

# 根據(jù)數(shù)據(jù)類型創(chuàng)建多個列表
data = [1, 2.5, "apple", 4, "banana", 6.7, "orange", 8, 9, "pear"]
integers = []
floats = []
strings = []

for item in data:
    if isinstance(item, int):
        integers.append(item)
    elif isinstance(item, float):
        floats.append(item)
    elif isinstance(item, str):
        strings.append(item)

print("整數(shù)列表:", integers)
print("浮點數(shù)列表:", floats)
print("字符串列表:", strings)

這將根據(jù)數(shù)據(jù)的類型將其存儲在三個不同的列表中。

5. 根據(jù)條件動態(tài)創(chuàng)建多個列表

有時候,我們需要根據(jù)動態(tài)變化的條件來創(chuàng)建多個列表。例如,我們想根據(jù)用戶輸入的數(shù)量創(chuàng)建相應(yīng)數(shù)量的列表:

# 根據(jù)用戶輸入動態(tài)創(chuàng)建多個列表
num_lists = int(input("請輸入要創(chuàng)建的列表數(shù)量: "))
lists = [[] for _ in range(num_lists)]

print("已創(chuàng)建", num_lists, "個空列表:", lists)

這將根據(jù)用戶輸入的數(shù)量動態(tài)創(chuàng)建相應(yīng)數(shù)量的空列表。

6. 創(chuàng)建包含特定范圍的數(shù)字的多個列表

有時候,我們需要根據(jù)特定范圍的數(shù)字來創(chuàng)建多個列表。例如,我們想要將0到9之間的數(shù)字按照個位數(shù)分別存儲在十個列表中:

# 創(chuàng)建包含特定范圍的數(shù)字的多個列表
num_lists = 10
range_lists = [[] for _ in range(num_lists)]

for num in range(10):
    range_lists[num % num_lists].append(num)

print("按照個位數(shù)存儲的列表:")
for i, lst in enumerate(range_lists):
    print(f"列表{i}:", lst)

這將按照個位數(shù)將0到9之間的數(shù)字分別存儲在十個列表中。

7. 根據(jù)鍵的哈希值創(chuàng)建多個列表

有時候,我們想根據(jù)鍵的哈希值將數(shù)據(jù)分組存儲在多個列表中。例如,我們有一組鍵值對,我們想根據(jù)鍵的哈希值將其存儲在不同的列表中:

# 根據(jù)鍵的哈希值創(chuàng)建多個列表
data = {"apple": 3, "banana": 5, "orange": 2, "pear": 4, "grape": 6}
num_lists = 3
hash_lists = [[] for _ in range(num_lists)]

for key, value in data.items():
    hash_index = hash(key) % num_lists
    hash_lists[hash_index].append((key, value))

print("根據(jù)鍵的哈希值存儲的列表:")
for i, lst in enumerate(hash_lists):
    print(f"列表{i}:", lst)

這將根據(jù)鍵的哈希值將鍵值對存儲在三個不同的列表中。

8. 根據(jù)列表中元素的屬性創(chuàng)建多個列表

有時候,我們需要根據(jù)列表中元素的屬性值來創(chuàng)建多個列表。例如,假設(shè)我們有一組學(xué)生對象,我們想根據(jù)他們的成績將他們分別存儲在及格和不及格的兩個列表中:

# 根據(jù)學(xué)生對象的成績創(chuàng)建多個列表
class Student:
    def __init__(self, name, score):
        self.name = name
        self.score = score

students = [
    Student("Alice", 85),
    Student("Bob", 60),
    Student("Charlie", 75),
    Student("David", 40),
    Student("Emma", 95)
]

passing_students = []
failing_students = []

for student in students:
    if student.score >= 60:
        passing_students.append(student)
    else:
        failing_students.append(student)

print("及格學(xué)生列表:")
for student in passing_students:
    print(f"{student.name}: {student.score}")

print("\n不及格學(xué)生列表:")
for student in failing_students:
    print(f"{student.name}: {student.score}")

這將根據(jù)學(xué)生對象的成績將學(xué)生分別存儲在及格和不及格的兩個列表中。

9. 根據(jù)索引范圍創(chuàng)建多個列表

有時候,我們需要根據(jù)索引范圍將列表切分成多個子列表。例如,我們有一個包含一組數(shù)字的列表,我們想將其分割成若干個小的子列表:

# 根據(jù)索引范圍創(chuàng)建多個列表
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
num_lists = 3
split_lists = []

for i in range(num_lists):
    start_index = i * len(numbers) // num_lists
    end_index = (i + 1) * len(numbers) // num_lists
    split_lists.append(numbers[start_index:end_index])

print("切分后的列表:")
for i, lst in enumerate(split_lists):
    print(f"列表{i + 1}:", lst)

這將根據(jù)索引范圍將原始列表切分成三個子列表。

10. 根據(jù)列表元素的值進(jìn)行分組創(chuàng)建多個列表

有時候,我們需要根據(jù)列表元素的值進(jìn)行分組,并將它們存儲在不同的列表中。例如,假設(shè)我們有一組整數(shù),我們想根據(jù)它們的奇偶性將它們分別存儲在兩個列表中:

# 根據(jù)列表元素的值進(jìn)行分組創(chuàng)建多個列表
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
odd_numbers = []
even_numbers = []

for num in numbers:
    if num % 2 == 0:
        even_numbers.append(num)
    else:
        odd_numbers.append(num)

print("奇數(shù)列表:", odd_numbers)
print("偶數(shù)列表:", even_numbers)

這將根據(jù)列表元素的奇偶性將其分別存儲在奇數(shù)和偶數(shù)列表中。

11. 根據(jù)元素是否滿足條件創(chuàng)建多個列表

有時候,我們需要根據(jù)元素是否滿足特定條件來將它們存儲在不同的列表中。例如,假設(shè)我們有一組數(shù)字,我們想將大于等于5和小于5的數(shù)字分別存儲在兩個列表中:

# 根據(jù)元素是否滿足條件創(chuàng)建多個列表
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
greater_than_5 = []
less_than_5 = []

for num in numbers:
    if num >= 5:
        greater_than_5.append(num)
    else:
        less_than_5.append(num)

print("大于等于5的數(shù)字列表:", greater_than_5)
print("小于5的數(shù)字列表:", less_than_5)

這將根據(jù)數(shù)字是否大于等于5來將其存儲在兩個不同的列表中。

總結(jié)

總的來說,本文介紹了在Python中利用循環(huán)創(chuàng)建多個列表的多種方法,并通過具體的代碼示例進(jìn)行了展示和解釋。從根據(jù)固定數(shù)量、條件、數(shù)據(jù)類型、屬性、索引范圍、哈希值等不同角度出發(fā),我們探討了如何靈活地利用循環(huán)結(jié)合列表推導(dǎo)式或條件語句來創(chuàng)建多個列表。這些方法不僅提高了代碼的靈活性和可維護(hù)性,還能夠加速開發(fā)過程并提高程序的性能。

通過本文的學(xué)習(xí),讀者可以掌握在Python中處理數(shù)據(jù)并組織成多個列表的技巧,從而更加有效地進(jìn)行數(shù)據(jù)操作和管理。同時,靈活運(yùn)用循環(huán)和列表推導(dǎo)式等Python特性,能夠使代碼更加簡潔、清晰和優(yōu)雅。在實際項目中,根據(jù)具體需求選擇合適的方法來創(chuàng)建多個列表將會成為編程中的重要技能,幫助提高代碼的質(zhì)量和效率。

?文章來源地址http://www.zghlxwxcb.cn/news/detail-860834.html

點擊關(guān)注,第一時間了解華為云新鮮技術(shù)~

?

到了這里,關(guān)于11個Python循環(huán)技巧的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Python小技巧分享

    import模塊 在Python經(jīng)常使用import聲明,以使用其他模塊(也就是其它.py文件)中定義的對象。 1) 使用__name__ 當(dāng)我們編寫Python庫模塊的時候,我們往往運(yùn)行一些測試語句。當(dāng)這個程序作為庫被import的時候,我們并不需要運(yùn)行這些測試語句。一種解決方法是在import之前,將模塊中的測

    2024年02月07日
    瀏覽(12)
  • Python循環(huán)中刪除元素技巧:避免迭代錯誤的新列表方法和倒序遍歷

    Python循環(huán)中刪除元素技巧:避免迭代錯誤的新列表方法和倒序遍歷

    ? 在Python中,如果你在循環(huán)過程中邊遍歷邊刪除列表元素,可能會導(dǎo)致一些意外的結(jié)果,因為在循環(huán)中直接修改正在迭代的列表可能會導(dǎo)致迭代錯誤或不一致的結(jié)果。這是因為在修改列表的同時,迭代器可能會失效。 為了安全地遍歷列表并刪除元素,可以考慮使用新的列表來

    2024年01月17日
    瀏覽(38)
  • 本文整理了Debian 11在國內(nèi)的幾個軟件源。

    本文整理了Debian 11在國內(nèi)的幾個軟件源。

    ? 1.使用說明? 一般情況下,將/etc/apt/sources.list文件中Debian默認(rèn)的軟件倉庫地址和安全更新倉庫地址修改為國內(nèi)的鏡像地址即可,比如將deb.debian.org和security.debian.org改為mirrors.xxx.com,并使用https訪問,可使用如下命令: 修改之后再運(yùn)行apt update更新索引。 2.國內(nèi)常見鏡像站點

    2024年02月07日
    瀏覽(45)
  • Python-Python高階技巧:HTTP協(xié)議、靜態(tài)Web服務(wù)器程序開發(fā)、循環(huán)接收客戶端的連接請求

    Python-Python高階技巧:HTTP協(xié)議、靜態(tài)Web服務(wù)器程序開發(fā)、循環(huán)接收客戶端的連接請求

    當(dāng)前版本號[20231114]。 版本 修改說明 20231114 初版 1.1 網(wǎng)址的概念 網(wǎng)址又稱為URL,URL的英文全拼是(Uniform Resoure Locator),表達(dá)的意思是 統(tǒng)一資源定位符 ,通俗理解就是網(wǎng)絡(luò)資源地址。 URL地址:https://www.itcast.com/18/1122/10/E178J2O4000189FH.html 1.2 URL的組成 域名 : IP地址的別名 ,它是用

    2024年02月04日
    瀏覽(38)
  • ????Java開發(fā)者的Python快速進(jìn)修指南:控制之if-else和循環(huán)技巧

    在我們今天的學(xué)習(xí)中,讓我們簡要了解一下Python的控制流程??紤]到我們作為有著豐富Java開發(fā)經(jīng)驗的程序員,我們將跳過一些基礎(chǔ)概念,如變量和數(shù)據(jù)類型。如果遇到不熟悉的內(nèi)容,可以隨時查閱文檔。但在編寫程序或邏輯時,if-else判斷和循環(huán)操作無疑是我們經(jīng)常使用的基

    2024年02月05日
    瀏覽(95)
  • 輕松駕馭Python格式化:5個F-String實用技巧分享

    F-String (格式化字符串字面值)是在Python 3.6中引入的,它是一種非常強(qiáng)大且靈活的字符串格式化方法。 它允許你在字符串中嵌入表達(dá)式,這些表達(dá)式在運(yùn)行時會被求值并轉(zhuǎn)換為字符串, 這種特性使得 F-String 在編寫 Python 代碼時能夠更簡潔、更直觀地處理字符串。 本文總結(jié)了

    2024年03月12日
    瀏覽(21)
  • SolidUI社區(qū)-通用Prompt技巧

    隨著文本生成圖像的語言模型興起,SolidUI想幫人們快速構(gòu)建可視化工具,可視化內(nèi)容包括2D,3D,3D場景,從而快速構(gòu)三維數(shù)據(jù)演示場景。SolidUI 是一個創(chuàng)新的項目,旨在將自然語言處理(NLP)與計算機(jī)圖形學(xué)相結(jié)合,實現(xiàn)文生圖功能。通過構(gòu)建自研的文生圖語言模型,SolidUI 利用

    2024年02月13日
    瀏覽(19)
  • 《社區(qū)人員管理》實戰(zhàn)案例設(shè)計&個人案例分享

    作者:京東科技 劉宗愷 北京市疫情防控一體化平臺是以“京辦”為支撐,集病例流調(diào)、排查管控、隔離管理、人員轉(zhuǎn)運(yùn)、監(jiān)測評估于一體的疫情防控平臺,秉承五位一體統(tǒng)籌、現(xiàn)有體系融通、共性能力支撐、高效部門系統(tǒng)、快速局部突破的理念,進(jìn)行建設(shè)。 功能:多系統(tǒng)協(xié)

    2023年04月19日
    瀏覽(18)
  • 技術(shù)社區(qū)分享|Flow區(qū)塊鏈介紹(1/4)

    本文由Flow技術(shù)大使FOU翻譯。 原文標(biāo)題: Introduction to Flow blockchain 原文鏈接: https://jan-bernatik.medium.com/introduction-to-flow-blockchain-7532977c8af8 自我介紹 Hi!我叫Jan,目前是 核心Flow協(xié)議組的工程經(jīng)理 。你或許知道Flow是由NFT的先驅(qū)團(tuán)隊創(chuàng)建的-就是那個因用Crypto Kitties搞壞以太坊而出

    2024年01月16日
    瀏覽(44)
  • python好看的流星雨代碼,文本文檔流星雨代碼

    python好看的流星雨代碼,文本文檔流星雨代碼

    本篇文章給大家談?wù)刾ython制作超炫流星雨表白動態(tài),以及python好看的流星雨代碼,希望對各位有所幫助,不要忘了收藏本站喔。 以下是一個簡單的使用Pygame實現(xiàn)流星雨特效的代碼: ```python import pygame import random # 初始化 Pygame pygame.init() # 設(shè)置游戲窗口大小 width, height = 800, 60

    2024年02月22日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包