猿问

请问python里字符串如何变成字典?

a = '''The/AT grand/JJ jury/NN commented/VB
on/In a/AT number/NN of/In other/AP topics/NNS ,/,
AMONG/In them/PPO the/AT Atlanta/NP and/CC'''

{'AT': ['the', 'a'], 'JJ': ['grand'], 'NN': ['jury', 'number'], 'VB': ['commented'], 'In': [ 'on', 'of', 'among'], 'AP': ['other'], 'NNS': ['topics'], ',':[','], 'PPO': ['them'], 'NP':['atlanta'], 'CC': ['and']}
将上面的字符串变成下面的字典,但是限定只能用str,list,dictionary相关的结构来解答

题目来源及自己的思路

我是将这个字符串的空白去掉形成了列表,然后将列表变成字符串再把反斜杠去掉,但是去掉后,变成了一个个单一的字符串形成的列表,不知道该怎么形成集合的字典。

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)
import re
a = '''The/AT grand/JJ jury/NN commented/VB
on/In a/AT number/NN of/In other/AP topics/NNS ,/,
AMONG/In them/PPO the/AT Atlanta/NP and/CC'''
b = re.findall('w+/w+', a)
c = str(b).split('/')
print(c)

你期待的结果是什么?实际看到的错误信息又是什么?

我目前的思路也有可能是错的,希望可以指导一下,谢谢!


料青山看我应如是
浏览 652回答 1
1回答

慕姐4208626

b = re.findall(r'(.+?)/(.+?) ', a) # 注意最后有个空格keys = []for _b in b:    if _b[1] not in keys:         keys.append(_b[1])          res = {}for key in keys:     res[key] = [_b[0] for _b in b if _b[1]==key]
随时随地看视频慕课网APP

相关分类

Python
我要回答