python - 添加以设置拆分字符串的元素
问题描述
我以字符串形式接收值,以逗号分隔。例子:
alpha, gane, delta
delta, opsirom, nado
我想获得一个列表/一组唯一值,排序。我正在尝试使用一组唯一性:
app = set()
for r in result:
app = app | set(r.split[","])
但我收到以下错误:
TypeError: 'builtin_function_or_method' object is not subscriptable
解决方案
如果我正确理解您的输入并且split
如您所说的唯一性,我将使用两者之间的混合:replace
set
value_1 = "alpha, gane, delta, alpha"
aux_1 = value_1.replace(" ","").split(",")
a = list(set(aux_1))
print(a)
#Another list formatted as string arrives:
value_2 = "alpha, beta, omega, beta"
aux_2 = value_2.replace(" ","").split(",")
#Option 1:
a += list(set(aux_2))
a = list(set(a))
print(a)
#Option 2:
for i in aux_2:
if i in a:
pass
else:
a.append(i)
print(a)
两种情况的输出:
['delta', 'gane', 'omega', 'beta', 'alpha']
收到另一个字符串后,您可以将值添加到完整列表中,在这种情况下a
并set()
再次使用以消除进一步的重复。或者如果字符串中的值是完整列表,则检查每个单独的值,in
如果不是,则附加它,或者如果它已经存在于完整列表中,则跳过。
推荐阅读
- javascript - 如何在本机反应中绘制带有置信带的折线图
- file - 无法在 Visual D 中使用 `std.file.readText(fileName)` 读取文本文件(引发奇怪的异常)
- node.js - 使用 Sudo 执行 NodeJS 程序,然后使用 spawn 而不使用 sudo
- javascript - Javascript:Axios 网络请求 30s 响应超时
- magento2 - Magento 2.3.4 Authorize.net 网关拒绝错误 33“需要电话”
- c++ - 安装点云库 (PCL) 1.11.0 MSVC 2019 Win32 时出现问题
- android - 使用 Coil Compose 加载本地可绘制对象
- r - R/Rstudio 慢慢占用硬盘存储空间
- django - 如何通过 Axios 和 Vue.js 传递数据,在 DRF 序列化程序中为具有多对多字段的模型编写 create() 函数
- javascript - 更好的时间复杂度总是转化为更快的运行时间吗?