使用Python将字符串拆分为列表
我有一根绳子:使用Python将字符串拆分为列表,python,string,list,split,Python,String,List,Split,我有一根绳子: string = '26.10-8-00 - Fabricação de componentes eletrônicos | 46.51-6-01 - Comércio atacadista de equipamentos de informática | 95.11-8-00 - Reparação e manutenção de computadores e de equipamentos periféricos' 我想用这些代码创建一个列表。可能是这样的: mylist
string = '26.10-8-00 - Fabricação de componentes eletrônicos | 46.51-6-01 - Comércio atacadista de equipamentos de informática | 95.11-8-00 - Reparação e manutenção de computadores e de equipamentos periféricos'
我想用这些代码创建一个列表。可能是这样的:
mylist = ['26.10-8-00', '46.51-6-01', '95.11-8-00']
我将字符串拆分为|以获得一个列表,然后将每个值拆分为-并仅提取其中的日期部分:
result = [x.split(' - ')[0] for x in s.split(' | ')]
我将字符串拆分为|以获得一个列表,然后将每个值拆分为-并仅提取其中的日期部分:
result = [x.split(' - ')[0] for x in s.split(' | ')]
您可以使用正则表达式:
import re
string = '26.10-8-00 - Fabricação de componentes eletrônicos | 46.51-6-01 - Comércio atacadista de equipamentos de informática | 95.11-8-00 - Reparação e manutenção de computadores e de equipamentos periféricos'
new_string = [i for i in re.split("\s-\s|(?<=\|)\s(?=\d)", string) if re.findall("^\d+\.\d+-\d+-\d+", i)]
您可以使用正则表达式:
import re
string = '26.10-8-00 - Fabricação de componentes eletrônicos | 46.51-6-01 - Comércio atacadista de equipamentos de informática | 95.11-8-00 - Reparação e manutenção de computadores e de equipamentos periféricos'
new_string = [i for i in re.split("\s-\s|(?<=\|)\s(?=\d)", string) if re.findall("^\d+\.\d+-\d+-\d+", i)]
挖掘一个更简单的方法,但完成工作
string = '26.10-8-00 - Fabricação de componentes eletrônicos | 46.51-6-01 - Comércio atacadista de equipamentos de informática | 95.11-8-00 - Reparação e manutenção de computadores e de equipamentos periféricos'
mylist = []
for x in string.split(" | "):
mylist.append(x.split(" - ")[0])
print(mylist)
输出
['26.10-8-00', '46.51-6-01', '95.11-8-00']
挖掘一个更简单的方法,但完成工作
string = '26.10-8-00 - Fabricação de componentes eletrônicos | 46.51-6-01 - Comércio atacadista de equipamentos de informática | 95.11-8-00 - Reparação e manutenção de computadores e de equipamentos periféricos'
mylist = []
for x in string.split(" | "):
mylist.append(x.split(" - ")[0])
print(mylist)
输出
['26.10-8-00', '46.51-6-01', '95.11-8-00']
使用
使用
使用正则表达式?关于findallr'[0-9]+.[0-9]+-[0-9]-[0-9]+',使用正则表达式的字符串?re.findallr'[0-9]+.[0-9]+-[0-9]-[0-9]+',StringThink.strip删除最后两个结果中的前导空格。我通过在| in for x in string.split |前后添加空格来修复它:考虑.strip删除最后两个结果中的前导空格。我通过在| in for x in in string.split前后添加空格来修复它: