Мне нужно извлечь названия генов и хромосом из строк ввода пользователя.Линии таковы:
YAL002W VPS8 SGDID: S000000002, Chr I от 143707-147531, Геном Релиз 64-2-1
Слово гена - второе слово«в строке (= 3 заглавные буквы от A до Z, за которыми следует число от 0 до 9). Хромосомы - это« Chr », за которыми следуют римские цифры.Я пытаюсь использовать регулярные выражения, чтобы сделать это.
Я пытаюсь использовать регулярные выражения для этого.
Это часть моего кода.
import sys
import re
sequence = sys.stdin.readlines()
ref_d = {}
temp_genename = None
temp_chrname = None
genename_pattern = '^([A-Z]{3})([0-9]{1})$'
chr_pattern = 'Chr (?=[MDCLXVI)M*(C[MD]|D?C*)(X[CL]|L?X*)(I[XV]|V?|*)$
m1 = re.search(genename_pattern, sequence)
m2 = re.search(chr_pattern, sequence)
print(m1.group())
print(m2.group())
Из приведенного выше ввода я хочу, чтобы мой код возвращал m1 = VPS8 и m2 = Chr I. Однако он продолжает возвращаться:
'NoneType' object has no attribute 'group'