Python - 拆分由空格和逗号分隔的名称字符串

标签 python django

我有一个 API 将我的程序输入到 Django 多对多模型字段中。我的数据库中个人的名字是用分开的名字和姓氏构成的。但是,API 正在发送一个结构为字符串列表的批量名称列表,如下所示:"Jones, Bob Smith, Jason Donald, Mic" -新姓氏-等)

如何以允许我过滤特定用户并将其添加到多对多字段的方式分隔此字符串?

谢谢!!

最佳答案

这个答案排除了名字或姓氏包含空格的情况(这种情况要复杂得多,因为您将在他的左边和右边有一个空格)。

您需要将 -comma-space- 替换为没有空格的内容(因为您在两个不同的名称之间也有一个空格)。

string = "Jones, Bob Smith, Jason Donald, Mic"

names = []
for name in string.replace(', ', ',').split(' '): 
    name = name.split(',')
    last_name = name[0]
    first_name = name[1]
    names.append((last_name, first_name))
names

输出:
[('Jones', 'Bob'), ('Smith', 'Jason'), ('Donald', 'Mic')]

关于Python - 拆分由空格和逗号分隔的名称字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59271492/

相关文章:

Python tkinter Entry 小部件状态通过单选按钮切换

python - 在函数中使用用户输入以及带有用户输入的字典

python - 如何使用Playwright与Metamask交互?

python - Django:如何获取所有员工用户的查询集?

django - 连接到 Django 测试数据库

python - 测量字节码使用情况

python - 为什么pip卸载不了pysqlite?

html - Django:<ul> 在字段的帮助文本中

python - 如何检查 django 员工用户首次登录管理面板?

python - Django 模型设计 - 多对多字段