在 Python 中将字符串转换为集合

使用 set() 类将字符串转换为集合,例如 my_set = set(my_str)set() 类将通过拆分其字符将字符串转换为集合。

my_str = 'one'

# ✅ 通过拆分字符将字符串转换为集合
my_set = set(my_str)
print(my_set)  # 👉️ {'n', 'o', 'e'}

# ----------------------------------------------------

# ✅ 将字符串转换为不拆分字符的集合

my_set = set([my_str])
print(my_set)  # 👉️ {'one'}

# ----------------------------------------------------

# ✅ 将字符串转换为具有多个元素的集合

my_str = 'one,two,three'

my_set = set(my_str.split(','))
print(my_set)  # 👉️ {'one', 'two', 'three'}

# ----------------------------------------------------

# ✅ 将字符串转换为具有多个整数元素的集合

my_str = '1,2,3'

my_set = set(int(item) for item in my_str.split(','))
print(my_set)  # 👉️ {1, 2, 3}

第一个示例使用 set() 类通过拆分字符将字符串转换为集合对象。

my_str = 'one'

my_set = set(my_str)
print(my_set)  # 👉️ {'n', 'o', 'e'}

字符串中的每个字符都成为一个单独的集合元素。

如果我们需要将字符串转换为一组整数,则可以使用相同的方法。

my_str = '123'

my_set = set(int(digit) for digit in my_str)
print(my_set)  # 👉️ {1, 2, 3}

我们使用生成器表达式来迭代字符串。

生成器表达式用于对每个元素执行一些操作或选择满足条件的元素子集。

在每次迭代中,我们将当前数字转换为整数并返回结果。

或者,我们可以将列表传递给 set() 类。

要将字符串转换为集合而不拆分字符串的字符,请将包含字符串的列表传递给 set() 类,例如 my_set = set([my_str])。 该集合将包含字符串作为其单个元素。

my_str = 'one'


my_set = set([my_str])
print(my_set)  # 👉️ {'one'}

set() 类接受一个可迭代的可选参数,并返回一个新的集合对象,其中的元素取自可迭代对象。

empty_set = set()
print(empty_set) # 👉️ set()

my_set = set(['one', 'two', 'three'])
print(my_set) # 👉️ {'three', 'two', 'one'}

如果需要在分隔符上拆分字符串以创建集合对象,请使用 str.split() 方法。

my_str = 'one,two,three'

my_set = set(my_str.split(','))
print(my_set)  # 👉️ {'one', 'two', 'three'}

我们使用 str.split() 方法在每个逗号上拆分字符串,并将结果传递给 set() 类以创建一个集合对象。

my_str = 'one,two,three'

print(my_str.split(',')) # 👉️ ['one', 'two', 'three']

str.split() 方法使用分隔符将字符串拆分为子字符串列表。

该方法采用以下 2 个参数:

  • separator 在每次出现分隔符时将字符串拆分为子字符串
  • maxsplit 最多完成最大拆分(可选)

当没有分隔符传递给 str.split() 方法时,它会将输入字符串拆分为一个或多个空白字符。

如果在字符串中找不到分隔符,则返回仅包含 1 个元素的列表。

如果我们需要将字符串拆分为包含整数元素的集合,则可以使用生成器表达式。

my_str = '1,2,3'

my_set = set(int(item) for item in my_str.split(','))
print(my_set)  # 👉️ {1, 2, 3}

我们使用生成器表达式来迭代列表,并使用 int() 类将每个项目转换为整数。

set 对象包含整数元素。

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

迹忆客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值