在Python中,可以使用字符串的split()
方法将字符串按照指定的分隔符分割成一个列表,然后将列表转换为二维数组。本文将详细介绍Python中字符串变维数组的实现方法,并提供两个示例。
示例一:将字符串按行分割成二维数组
假设有一个字符串,其中每包含多个数字,数字之间用空格分。要将这个字符串按行分割成二维数组,可以使用步骤:
1.字符串按行分割成一个列表
str = '1 2 3\n4 5 6\n7 8 9'
lines = str.split('\n')
上面的代码将字符串按照换行符\n
分成一个列表列表中的每个元素是一行字符串。
- 将每行字符串按照空格分割成列表
arr = []
line in lines:
arr.append(line.split())
上面的代码遍历每行字符串,将每行字符串按照空格分割成一个列表,并将这个列表添加到一个新的列表中。这个的列表就是二维数组。
完整代码如下:
str = '1 2 3\n4 5 6\n7 8 9'
lines = str.split('\n')
arr = []
for line in lines:
arr.append(line.split())
print(arr)
输出结果为:
[['1', '2', '3'], ['4', '5',6 ['7', '8', '9']]
示例二:将字符串按列分割成二维数组
假设有一个字符串,其中每列包含多个数字,数字之间用空格分隔。要将这个字符串按列分割成二维数组,可以使用以下步骤:
- 将字符串按照空格分割成一个列表
str = '1 4 7\n2 5 8\n3 6 9'
nums = str.split()
上面的代码将字符串按照空格分割成一个列表,列表中的每个元素是一个数字字符串。
- 将列表转换为二维数组
arr = []
for i in range(3):
arr.append(nums[i::3])
上面的代码使用了列表切片的技巧,将列表中每三个元素作为一列,然后将这些列添加到一个新的列表中。这个新的列表就是二维数组。
完整代码如:
str = '1 4 7\n2 5 8\n3 6 9'
nums = str.split()
arr = []
for i in range(3):
arr.append(nums[i::3])
print(arr)
输出结果为:
[['1', '2', '3'], ['4', '5', '6'], ['7', '8', '9']]
总结
本文介绍了Python中字符串变二数组的实方法,并提供了两个示例。在将字符串转换为二维数组时,需要根据具体情况选择合适的分割符和切片方式。使用这些可以方便地将字符串转换为二维数组,便进行后续的数据处理。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python中字符串变二维数组的实例讲解 - Python技术站