我正试图在我的python程序中打印我所有的爬行动物亚种。我有一个文本文件,里面有一堆亚种和它们的DNA序列ID。我只想创建一个亚种(键)和它们各自的DNA序列id(值)的字典。但要做到这一点,我首先要学会如何把两者分开。
所以我只想打印所有的亚种名称,忽略序列id。
到目前为止
import re
file = open('repCleanSubs2.txt')
for line in file:
if line.startswith('[a-zA-Z]'):
print line
我相信编译器将'[a-zA-Z]'
作为字符串文字,而不是搜索字母表中的任何字母,不管大小写敏感度如何,这正是我想要的。
我的if
语句中是否缺少一些语法?
谢谢!
startswith
不解释正则表达式。使用导入的re模块检查字符串是否匹配:开始于:
^
一个或多个匹配字符:
+
http://www.fon.hum.uva.nl/praat/manual/Regular_expressions_1__Special_characters.html
尝试以下行而不是startswith。
^
符号表示从行首开始匹配,a-z
和A-Z
之间的字母+
表示必须在[a-zA-Z]
中找到至少一个或多个字符re.findall
将返回在提供给它的字符串中可以找到的所有模式的列表相关问题 更多 >
编程相关推荐