当前位置: 首页 > news >正文

在 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 对象包含整数元素。

http://www.lryc.cn/news/44456.html

相关文章:

  • 大数据Flink进阶(十三):Flink 任务提交模式
  • day11—编程题
  • CentOS下安装crontab及cron表达式解析
  • python 绘制训练曲线--基于Numpy.convolve曲线平均滤波
  • 状态管理插件vuex
  • arthas—阿里开源的Java诊断工具
  • Java学习记录
  • OpenGL API 之 glVertexAttribPointer
  • 蓝桥杯真题4
  • day02_基本语法
  • 多线程之单例模式
  • 2023年绿色建筑国际会议(ICoGB 2023) | Springer独立出版
  • Python中进程和线程到底有什么区别?
  • 2023美赛春季赛F题思路数据代码论文分享
  • 念一句咒语 AI 就帮我写一个应用,我人麻了...
  • 开放平台设计之接口签名认证
  • Vue自创插件发布到npm以及使用方法
  • 合成孔径雷达干涉测量InSAR数据处理、地形三维重建、形变信息提取、监测等实践技术
  • Java刷题,蓝桥杯省赛第十二届(第一场)4-------------6
  • Docker Cgroups——Docker 资源限制背后的技术原理
  • 十四. MySQL 锁相关
  • ModStartBlog v7.0.0 网站简单统计,支持博客分享
  • 【C语言蓝桥杯每日一题】—— 递增序列
  • node_express框架01
  • 想转行做程序员,该怎么选择开发语言?哪个岗位工资最高?
  • JavaWeb——【笔记】3.2JavaWeb_Web核心_Request(请求)+Response(响应)
  • HTML 标签和属性
  • MySQL 连接的使用
  • 配置案例丨EtherCAT转Profinet网关连接凯福科技总线步进驱动器
  • VSCODE连接ssh服务器时提示could not establish connection to解决方法