У меня есть код, написанный как показано ниже, который состоит из блока with
.
alleles=[]
pop = 1 + 4
snp=[]
# read in input file
with open("input.txt", 'r') as f:
for line in f:
alleles.append(line.split()[2]+line.split()[1]) # risk first, then ref. keep risk as second allele
snp = [{"riskall": line[1],"weight": float(line[4]),"freq": float(line[pop]),
line[1]+line[1]:(2*float(line[4]),(float(line[pop])*float(line[pop]))),
line[2]+line[1]:(float(line[4]),(2*(((1-float(line[pop]))*(float(line[pop])))))),
line[2]+line[2]:(0, ((1-float(line[pop]))*((1-float(line[pop])))))} for line in map(lambda x: x.split(),f)]
Как ни странно, назначение snp
просто не работает, что приводит к пустому массиву.То же самое происходит, если я поменяю местами мой цикл for
и назначение snp
, где последний работает нормально, но первый не происходит.
Кто-нибудь знает, что происходит?Я совершенно уверен, что отступ правильный ...