一个列表中存在若干数值(整数和实数)和字母,每个元素都是一个字符串类型,如使用try..except..解决lst = ['2','3.5','rg','6.7','mnl'],将列表中的数值和字母分别放在两个列表中。
时间: 2023-12-07 13:03:29 浏览: 102
可以使用 try..except.. 语句来判断每个元素是否是数值类型,如果是,将其加入到数字列表中,否则加入到字母列表中。以下是一个示例代码:
```
lst = ['2','3.5','rg','6.7','mnl']
num_lst = []
char_lst = []
for elem in lst:
try:
num = float(elem)
num_lst.append(num)
except ValueError:
char_lst.append(elem)
print("数字列表:", num_lst)
print("字母列表:", char_lst)
```
在上面的示例代码中,我们首先定义了一个列表 lst,其中包含了若干不同类型的元素。然后,我们定义了两个空列表 num_lst 和 char_lst,用于分别存储数字和字母元素。接下来,我们使用 for 循环遍历列表 lst 中的每个元素。在循环中,我们使用 try..except.. 语句来尝试将当前元素转换为浮点数类型。如果转换成功,说明当前元素是数值类型,将其加入到 num_lst 列表中;否则,说明当前元素是字母类型,将其加入到 char_lst 列表中。最后,我们使用 print 函数显示数字列表和字母列表。
注意,上述代码中使用了 float 函数将字符串类型的数值转换为浮点数类型。如果要将字符串类型的数值转换为整型,可以使用 int 函数。
阅读全文