![](/img/trans.png)
[英]Reading lines from a file using a generator comprehension vs a list comprehension
[英]list generator/comprehension for reading from file and putting in list
假設我從創建一個類開始,變量為self.memory = [None] * 10000
。 現在,我有一個結構如下的文件:
1 1231
2 1231
3 asdma
4 landsl
我想生成一個生成器語句,該語句將讀取文件的每一行並將其放在self.memory變量中的指定索引處(左數)。 這樣的陳述可能嗎?
編輯:添加當前正在使用的內容:
def AbsoluteLoader(self, f):
with open(f, 'r') as assembly:
for line in assembly:
c = line.split()
if int(c[0]) == -1:
self.pc = long(c[1])
break
try:
self.memory[int(c[0])] = long(c[1])
except:
print 'invalid'
class MyClass:
def __init__(self, fname, lines=10000):
self.pc = None
self.memory = mem = [0L] * lines
with open(fname) as inf:
for line in inf:
ndx, num = line.split()
ndx = int(ndx)
num = long(num)
try:
mem[ndx] = num
except IndexError:
if ndx == -1:
self.pc = num
break
else:
raise ValueError('invalid entry: {}'.format(line.rstrip('\r\n')))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.