如何替换python中的所有字符串元素?

我是NLP的新手,并尝试解决部分语音标签问题。我有一个句子及其词性,我想以整行的('word','pos_tag')形式写成一行。

1. aImIroawi/ADJ TIOIna/N ::/PUN
2. qIdImi/PRE bIzuHI/ADJ oametatI/N "/PUN aImIroawi/ADJ sInIkIlIna/N bIganEnI/N 
3. weyI/CON IkeyI/ADJ menafIsIti/N iyu/V_AUX zImexII/V_REL "/PUN zIbIlI/V_REL 4. gIguyI/ADJ ameleKaKIta/N neyIru/V_GER ::/PUN

这是我拥有的数据

for line in corpus:
    lene =line.split()
    sentence.append(lene)
    #print(sentence)
    #print (lene)
    for word in lene:
            w,tag = word.split('/')
            words.append(w)
            tags.append(tag)
#print(len(lene)) 
for line in corpus:
    onesentence=line.split()
    print(len(onesentence))
    for elem in onesentence:
        for i in range(len(onesentence)):
            elem = words[i],tags[i]
            print(elem)

('qIdImi','PRE')
('bIzuHI','ADJ')
('oametatI','N')
('"','PUN')
('aImIroawi','ADJ')
('sInIkIlIna','N')
('bIganEnI','N')
('weyI','CON')
('IkeyI','ADJ')

在上面是我得到的结果,但是我想在数组列表中的一个句子中写所有带有相应pos的单词。像

[ [('aImIroawi','ADJ'),('TIOIna','N'),('::','PUN')],[('qIdImi','PRE'),('bIzuHI',('oametatI',.....]]
mario_l 回答:如何替换python中的所有字符串元素?

您可以使用list comprehension

# Input - Just to divide your data into 3 lines
data = """aImIroawi/ADJ TIOIna/N ::/PUN
qIdImi/PRE bIzuHI/ADJ OametatI/N "/PUN aImIroawi/ADJ sInIkIlIna/N bIganEnI/N 
weyI/CON IkeyI/ADJ menafIsIti/N iyu/V_AUX zImexII/V_REL "/PUN zIbIlI/V_REL 4. gIguyI/ADJ ameleKaKIta/N neyIru/V_GER ::/PUN"""

# I have splitted the data with `\n` for getting each line,then with `space` to get
# each word and added it to a list and inside the list I splitted the data using `/`
# to get each word inside a tuple
res = [[tuple(i.split("/")) for i in line.split(" ")] for line in data.split("\n")]
print (res)

# Result
# [[('aImIroawi','ADJ'),('TIOIna','N'),('::','PUN')],[('qIdImi','PRE'),('bIzuHI',('OametatI',('"','PUN'),('aImIroawi',('sInIkIlIna',('bIganEnI',('',)],[('weyI','CON'),('IkeyI',('menafIsIti',('iyu','V_AUX'),('zImexII','V_REL'),('zIbIlI',('4.',),('gIguyI',('ameleKaKIta',('neyIru','V_GER'),'PUN')]]

我希望这对您有所帮助!

本文链接:https://www.f2er.com/3136243.html

大家都在问