gpt4 book ai didi

python - 改变python中字符串的顺序

转载 作者:太空宇宙 更新时间:2023-11-03 12:11:51 24 4
gpt4 key购买 nike

如何更改字符串的顺序?例如

mys='4002-10-21'

预期结果:

'4002-21-10'

我尝试过的:

我可以枚举拆分后的字符串,然后像 1-3-2 一样重新排列序列

newlist=list()
for i, v in enumerate(mys.split('-')):
newlist.append(v)

最佳答案

operator.itemgetter您可以通过一个电话获得多个项目:

>>> from operator import itemgetter
>>> '-'.join(itemgetter(0,2,1)(mys.split('-')))
'4002-21-10'

string format 你可以从参数中选择值:

>>> "{0}-{2}-{1}".format(*mys.split('-'))
'4002-21-10'

re.sub您可以捕获组并重新排序(假设数字):

>>> import re
>>> re.sub(r'(\d+)-(\d+)-(\d+)', r'\1-\3-\2', mys)
'4002-21-10'

如果您在 pandas 中需要这个(如评论中所暗示),您可以在 DataFrame.replace 中使用基于正则表达式的方法和 Series.str.replace ,例如(为就地潜艇添加 inplace=True):

>>> import pandas as pd
>>> df = pd.DataFrame({'dates': ['4002-10-21']})
>>> df.dates.replace(r'(\d+)-(\d+)-(\d+)', r'\1-\3-\2', regex=True)
0 4002-21-10
Name: dates, dtype: object

关于python - 改变python中字符串的顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46756326/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com