📜  Python|从字符串列表中拆分字符串和数字(1)

📅  最后修改于: 2023-12-03 15:19:17.700000             🧑  作者: Mango

Python|从字符串列表中拆分字符串和数字

在Python开发中,经常需要处理由字符串和数字组成的列表或数组。这时,我们需要将字符串和数字分开处理。下面,介绍常用的两种方法。

方法一:使用isdigit()方法

isdigit() 方法用于检测字符串是否只由数字组成。如果是,返回 True,否则返回 False。我们可以利用这个方法把字符串和数字分开处理。

str_list = ['apple', '123', 'banana', '456']
strs = []
nums = []
for s in str_list:
    if s.isdigit():
        nums.append(int(s))
    else:
        strs.append(s)
print('字符串列表:', strs)
print('数字列表:', nums)

输出结果:

字符串列表: ['apple', 'banana']
数字列表: [123, 456]
方法二:使用正则表达式

正则表达式是一个强大的工具,可以在字符串中搜索特定的模式,然后进行匹配处理。我们可以通过正则表达式来把字符串和数字分开。

import re

str_list = ['apple', '123', 'banana', '456']
strs = []
nums = []
for s in str_list:
    if re.match(r'^\d+$', s):
        nums.append(int(s))
    else:
        strs.append(s)
print('字符串列表:', strs)
print('数字列表:', nums)

输出结果:

字符串列表: ['apple', 'banana']
数字列表: [123, 456]

以上是从字符串列表中拆分字符串和数字的两种方法,根据实际需求选择更适合自己的方法即可。