为了账号安全,请及时绑定邮箱和手机立即绑定

关于拆分(Python函数)

关于拆分(Python函数)

慕姐8265434 2022-10-25 14:52:25
我的问题是关于拆分功能我有一个元组:name = 'test_1_1', 'test_1_2', 'test_1_3-4-5'...我想得到这样的东西:['test_1_1', 'test_1_2', 'test_1_3', 'test_1_4', 'test_1_5']我怎么能那样做?
查看完整描述

2 回答

?
海绵宝宝撒

TA贡献1809条经验 获得超8个赞

您的问题非常无效,但是,


这对你有用吗:


names = 'test_1_1', 'test_1_2', 'test_1_3-4-5'                                        


res = [] 

for name in names: 

    if '-' not in name: 

        res.append(name) 

        continue 

    parts = name.split('_') 

    for sub in parts[2].split('-'): 

        res.append(f'{parts[0]}_{parts[1]}_{sub}') # This is what makes sense to me but maybe you want the following: 

        # res.append(f'{parts[0]},{parts[1]},{sub}')




print(res)

输出:


['test_1_1', 'test_1_2', 'test_1_3', 'test_1_4', 'test_1_5']


查看完整回答
反对 回复 2022-10-25
?
慕莱坞森

TA贡献1810条经验 获得超4个赞

假设您string确实是 a tuple,您可以使用:


import re


name = 'test_1_1', 'test_1_2', 'test_1_3-4-5'

new_name = [re.split(r"[_-]", x) for x in name]

# [['test', '1', '1'], ['test', '1', '2'], ['test', '1', '3', '4', '5']]

或者,由于我没有完全理解您的问题,您可能需要:


new_name = [re.sub(r"[_-]", ",", x) for x in name ]

# ['test,1,1', 'test,1,2', 'test,1,3,4,5']



查看完整回答
反对 回复 2022-10-25
  • 2 回答
  • 0 关注
  • 74 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信