如何在Python中将字符串转换为集合
作者:迹忆客
在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
对象包含整数元素。
扩展:在 Python 中将字符串转换为数组
使用 str.split()
方法将字符串转换为数组,例如 array = string.split(',')
。 str.split()
方法将在每次出现提供的分隔符时将字符串拆分为一个列表。
string = 'www,jiyik,com' # ✅ 将逗号分隔的字符串转换为数组 array = string.split(',') print(array) # 👉️ ['www', 'jiyik', 'com'] # --------------------------------------------- # ✅ 将空格分隔的字符串转换为数组 string = 'www jiyik com' array = string.split(' ') print(array) # 👉️ ['www', 'jiyik', 'com'] # --------------------------------------------- # ✅ 将字符串转换为字符数组 string = 'jiyik' array = list(string) print(array) # 👉️ ['j', 'i', 'y', 'i', 'k'] # --------------------------------------------- # ✅ 将字符串转换为整数数组 string = '1,2,3' array = list(int(char) for char in string.split(',')) print(array) # 👉️ [1, 2, 3] # --------------------------------------------- # ✅ 将字符串转换为单元素数组 string = 'jiyikcom' array = [string] print(array) # 👉️ ['jiyikcom']
我们使用 str.split()
方法将字符串转换为数组。
str.split() 方法使用分隔符将字符串拆分为子字符串列表。
该方法采用以下 2 个参数:
- separator 在每次出现分隔符时将字符串拆分为子字符串
- maxsplit 最多完成最大拆分(可选)
这是一个将逗号分隔的字符串转换为数组的示例。
string = 'www,jiyik,com' array = string.split(',') print(array) # 👉️ ['www', 'jiyik', 'com'] string = 'www,jiyik,com' array = string.split(',') print(array) # 👉️ ['www', 'jiyik', 'com']
str.split()
方法在每次出现逗号时拆分字符串。
如果我们需要将字符串转换为单词数组,请不带任何参数调用 str.split()
方法。
string = 'www jiyik com' array = string.split() print(array) # 👉️ ['www', 'jiyik', 'com']
当没有分隔符传递给 str.split()
方法时,它会将输入字符串拆分为一个或多个空白字符。
如果在字符串中找不到提供的分隔符,则返回仅包含 1 个元素的列表。
如果需要将字符串转换为字符数组,请使用 list()
类。
string = 'jiyik' array = list(string) print(array) # 👉️ ['j', 'i', 'y', 'i', 'k']
列表类接受一个可迭代对象并返回一个列表对象。
如果我们有数组的字符串表示形式并且需要将字符串转换为实际列表,请使用 ast.literal_eval()
方法。
from ast import literal_eval my_str = '[1,2,3,4]' my_list = literal_eval(my_str) print(my_list) # 👉️ [1, 2, 3, 4] print(type(my_list)) # 👉️ <class 'list'>
如果我们需要将字符串转换为整数列表,请使用生成器表达式。
string = '1,2,3' array = list(int(digit) for digit in string.split(',')) print(array) # 👉️ [1, 2, 3]
我们使用生成器表达式来遍历从 str.split()
方法获得的列表。
生成器表达式用于对每个元素执行一些操作或选择满足条件的元素子集。
在每次迭代中,我们使用 int()
类将当前数字转换为整数。
到此这篇关于如何在Python中将字符串转换为集合的文章就介绍到这了,更多相关Python字符串转换为集合内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!