簡體   English   中英

Python嵌套列表和列表理解

[英]Python nested lists and list comprehensions

因此,我得到了一個txt文件,其名稱和數字如下所示:

Sam 24
John 30
Rob 44

我需要使用如下所示的列表理解將其轉換為嵌套列表:

[["Sam","24"],["John","30]....]

(然后將其插入打印出來的程序中)

目前我已經走了這么遠

names = [[name,age] for name in open("people.txt","r").read().split() if name.isalpha()\
         for age in open("people.txt","r").read().split() if age.isdigit()]

基本上,這給了我一點我需要的東西,但是下半部分的循環方式太多了。 這里有什么想法嗎? 我有點難過。

您當前正在讀取文件兩次; 在一次迭代中獲取名稱,並在第二次迭代中獲取年齡

相反,這可以通過簡單的列表理解在一次迭代中完成:

with open("people.txt","r") as f:
    names = [t.split() for t in f]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM