簡體   English   中英

.txt文件中文本的索引行

[英]Indexing lines of text in a .txt file

說我有一個.txt文件。 該文件包含單詞和數字的交替行:

Mary
156
Sue
160
Jenn
154

我想將這些交替的行放入字典中,例如('Mary':156)。 我的第一個想法是使用%運算符使用for循環,但我仍然停留在實際實現上。 是否可以在文本文件中索引行? 到目前為止,我的思路是:

for i in range(len(text)):
    if i%2 == 0

Edit2:可以更簡單地做到這一點:

with open("data.txt") as inf:
    data = {name.strip():int(num) for name,num in zip(inf, inf))

退貨

{'Mary': 156, 'Sue': 160, 'Jenn': 154}

Edit3 :(回復評論):

"Mary,Jade,Jenn\n".split(',', 1)

退貨

["Mary", "Jade,Jenn\n"]

因此,如果您只想將字符串放在第一個逗號之前,則可以

name = in_string.split(',', 1)[0]    # => "Mary"

你可以這樣

with open("data.txt") as data:
    for line in data:
        name = line.strip()
        number = data.readline()
        print name
        print number

怎么樣?

for i in range(0, len(text), 2)

但是實際上並不需要它,因為您可以使用以下簡單的方法加載它:

s = """Mary
156
Sue
160
Jenn
154"""

lines = s.splitlines()
lines = zip(*[iter(lines)]*2)
d = dict(lines)

print d

暫無
暫無

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

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