Мне нужно преобразовать строку в код ASCII. Я использую Python.
Я сделал, как показано ниже:
b1=[ord(x) for x in l1[i]]
здесь l1 - список строк, l1 [i] - i-я строка l1
но я получил ошибку вроде:
Traceback (most recent call last):
File "./fastq_phred_filter.py", line 24, in ?
b1=[ord(x) for x in str(l1[i])]
IndexError: string index out of range
И я попробовал
b1=[ord(x) for x in str(l1[i])]
но все равно не работает.
Кстати, у меня давний вопрос: я всегда имею дело со строкой в списке строк (или ключом в списке), является ли строка, которую я получил из списка, строкой? Или мне сначала нужно сначала преобразовать строку в строку?
ТНХ
редактировать: большие куски кода:
l1= commands.getoutput('zcat '+fastqfile1)
l2= commands.getoutput('zcat '+fastqfile2)
f1=[]
f2=[]
for i in range(0,len(l1)):
if i % 4 == 3:
b1=[ord(x) for x in l1[i]]
ave1=sum(b1)/float(len(l1[i]))
b2=[ord(x) for x in str(l2[i])]
ave2=sum(b2)/float(len(l2[i]))
if (ave1 >= 20 and ave2>= 20):.............