mam Perl wyrażenie regularne /VA=\d+:(\S+):ENSG/
który jest używany w if jakoktóry moduł Pythona re odebrać za tłumaczenia Perl wyrażenie regularne
if ($info =~ /VA=\d+:(\S+):ENSG/){
$gene =$1;
próbuję dowiedzieć się, jaki jest najlepszy sposób replikować to w python będzie. W tej chwili mam
gene_re = re.compile(r'VA=\d+:(\S+):ENSG')
this_re = re.search(gene_re, info)
if this_re is not None:
gene = info[this_re.start(0):this_re.end(0)]
Czy to dobry sposób na przetłumaczenie? Sądzę, że jest to jeden obszar, w którym perl jest rzeczywiście bardziej czytelny niż pyton.
Należy zauważyć, że wyrażenie regularne Pythona zostało skompilowane, ponieważ następne trzy linie znajdują się w pętli.
Nie potrzeba 'jeśli this_re nie ma None'. W pytonie zwykle wystarczy powiedzieć "if this_re:". –
Nauczono mnie używać nie jest Brak, ponieważ jest bardziej czytelny i ponieważ None! = False –