python怎么将二维列表中的字符串变成整数
时间: 2023-04-01 13:01:44 浏览: 186
可以使用嵌套的循环来遍历二维列表中的每一个元素,然后使用int()函数将字符串转换为整数,示例代码如下:
```python
# 假设二维列表为lst
lst = [['1', '2', '3'], ['4', '5', '6'], ['7', '8', '9']]
# 遍历二维列表并将字符串转换为整数
for i in range(len(lst)):
for j in range(len(lst[i])):
lst[i][j] = int(lst[i][j])
# 输出转换后的二维列表
print(lst)
```
输出结果为:
```
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
```
相关问题
python 将字符串转化成二维数组
可以使用字符串的split()方法将字符串按行分割,然后再使用嵌套的列表推导式将每行的元素按照空格分割成二维数组。具体实现如下:
```python
string = '1 2 3\n4 5 6\n7 8 9'
# 将字符串按行分割,得到一个列表
lines = string.split('\n')
# 使用嵌套的列表推导式将每行的元素按照空格分割成二维数组
array = [[int(num) for num in line.split()] for line in lines]
# 输出二维数组
print(array)
# 输出:[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
```
上述代码中,首先将字符串按行分割成一个列表,然后使用嵌套的列表推导式遍历这个列表,将每行的元素按照空格分割成一个列表,并将其中的字符串转换成整数。最终得到的就是一个二维数组。
前面将文件中的数据转为列表时,存储在列表中的所有数据都是字符串类型的,但我们观察原始文件中的数据,发现有些数据应该是以数值类型存在和使用的,为了后续使用方便,我们应该将这些数据转为数值类型。 根据提示,在右侧编辑器补充代码,逐行读取文件中的数据,并将数据存储于二维列表中,将每个子列表中可转为数值类型的数据均转为数值类型,整数字符串转为整数类型,浮点数字符串转为浮点数类型,其他字符串保持原样(禁止使用eval()函数)。 程序接收用户输入的一个正整数n,输出转换数据类型后的列表的前n个元素。
代码如下:
```python
with open('data.txt', 'r') as f:
lines = f.readlines()
data = []
for line in lines:
line = line.strip().split(',')
# 新建一个列表,用于存储转换类型后的数据
new_line = []
for item in line:
# 尝试将字符串转为整数类型
try:
item = int(item)
# 如果转换失败,则尝试将字符串转为浮点数类型
except ValueError:
try:
item = float(item)
# 如果还是失败,则直接添加字符串
except ValueError:
pass
new_line.append(item)
data.append(new_line)
n = int(input("请输入一个正整数:"))
for line in data[:n]:
print(line)
```
阅读全文