我有一个如下所示的字符串变量。
AKT= PDK1 & ~ PTEN
AP1= JUN & (FOS | ATF2)
Apoptosis= ~ BCL2 & ~ ERK & FOXO3 & p53
ATF2= JNK | p38
ATM= DNA_damage
BCL2= CREB & AKT
我要删除'&'
,'~'
,'('
,')'
,'or'
,并列出如下所示的单词。
AKT = ['PDK1', 'PTEN']
AP1 = ['JUN', 'FOS', 'ATF2']
...
答案 0 :(得分:1)
这是您可以执行此操作的一种方式,
s = '''AKT= PDK1 & ~ PTEN
AP1= JUN & (FOS | ATF2)
Apoptosis= ~ BCL2 & ~ ERK & FOXO3 & p53
ATF2= JNK | p38
ATM= DNA_damage
BCL2= CREB & AKT'''
import re
final_list = []
for line in s.split('\n'):
valid_words = re.findall(r'\w+', line)
rhs = valid_words[0]
lhs = valid_words[1:]
final_list.append([rhs, lhs])
for item in final_list:
print(item[0],'=', item[1])
输出:
AKT = ['PDK1', 'PTEN']
AP1 = ['JUN', 'FOS', 'ATF2']
Apoptosis = ['BCL2', 'ERK', 'FOXO3', 'p53']
ATF2 = ['JNK', 'p38']
ATM = ['DNA_damage']
BCL2 = ['CREB', 'AKT']
答案 1 :(得分:0)
您可以split
和join
,即
APT = APT.split('&') #APT = ['PDK1', '~PTEN']
APT = join(APT)
APT = split('~')
APT = join(APT)
...