使用python命令的逗号分隔值

2024-10-08 18:30:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我的清单如下:

lstA = (JOHN_FILE,RGL_MANAGER VICKY_FILE,SALES_MANAGER MAXR_FILE,MANAGER ASHLEY_FILE,TEAM_LEAD TERRESA_FILE,TEAM_MEMBER)

我需要把这个转换成一个口述?我尝试了以下操作,但出现了错误

d1 = dict(item.split(",") for item in lstA.split(" "))

Error: dictionary update sequence element #0 has length 7; 2 is required.

目标是,给定一个员工的名字,我应该得到相应的职位作为价值。请注意,我不能使用熊猫,以及pyspark,因为我需要在我的Lambda使用这个

谢谢


Tags: manageritemjohnteamfilemembersplitsales
3条回答

如果输入是以字符串形式编写的,则表达式可以工作:

>>> lstA = "JOHN_FILE,RGL_MANAGER VICKY_FILE,SALES_MANAGER MAXR_FILE,MANAGER ASHLEY_FILE,TEAM_LEAD TERRESA_FILE,TEAM_MEMBER"
>>> dict(item.split(",") for item in lstA.split(" "))
{'ASHLEY_FILE': 'TEAM_LEAD', 'JOHN_FILE': 'RGL_MANAGER', 'TERRESA_FILE': 'TEAM_MEMBER', 'MAXR_FILE': 'MANAGER', 'VICKY_FILE': 'SALES_MANAGER'}

你可以使用理解和dict函数:

lstA = 'JOHN_FILE,RGL_MANAGER VICKY_FILE,SALES_MANAGER MAXR_FILE,MANAGER ASHLEY_FILE,TEAM_LEAD TERRESA_FILE,TEAM_MEMBER'

print(dict(p.split(',') for p in lstA.split())

结果:

{'JOHN_FILE': 'RGL_MANAGER', 'VICKY_FILE': 'SALES_MANAGER', 'MAXR_FILE': 'MANAGER', 'ASHLEY_FILE': 'TEAM_LEAD', 'TERRESA_FILE': 'TEAM_MEMBER'}

我想你在寻找这个:

lstA = 'JOHN_FILE,RGL_MANAGER VICKY_FILE,SALES_MANAGER MAXR_FILE,MANAGER ASHLEY_FILE,TEAM_LEAD TERRESA_FILE,TEAM_MEMBER'
d1 = {}
for person in lstA.split():
    name, job = person.split(',')
    d1[name] = job

说明:

lstA您拥有的信息列表

lstA.split()按空格拆分字符串

person.split(','),拆分人名及其职务

name, job = person.split(',')解压值

相关问题 更多 >

    热门问题