Python分割输出方括号

问题描述 投票:-1回答:4

我的代码看起来像这样:

import re
activity = "Basketball - Girls 9th"
activity = re.sub(r'\s', ' ', activity).split('-')
activity = str(activity [1:2]) + str(activity [0:1])
print("".join(activity))

我希望输出看起来像Girl's 9th Basketball,但打印时的当前输出是[' Girls 9th']['Basketball ']我想摆脱方括号。我知道我可以简单地修剪它,但我宁愿知道如何正确地做到这一点。

python string expression
4个回答
1
投票

你快到了。当您在.join上使用list时,它会创建一个string,因此您可以省略该步骤。

import re
activity = "Basketball - Girls 9th"
activity = re.sub(r'\s', ' ', activity).split('-')
activity = activity[1:2] + activity[0:1]
print(" ".join(activity))

1
投票

你正在使用与print(someList)相同的列表进行字符串连接 - 它是一个列表的表示,它将[]放在它周围。

import re
activity = "Basketball - Girls 9th"
activity = re.sub(r'\s', ' ', activity).split('-')
activity =  activity [1:2]  + [" "] +  activity [0:1] # reorders and reassignes list

print("".join(activity))

您可以考虑添加一个步骤:

# remove empty list items and remove trailing/leading strings
cleaned = [x.strip() for x in activity if x.strip() != ""]

print(" ".join(cleaned)) # put a space between each list item

这只是对列表进行重新排序并在其间添加所需的空间项,以便输出拟合。


0
投票

您可以在一行中解决它:

new_activity = ' '.join(activity.split(' - ')[::-1])

0
投票

你可以尝试这样的事情:

import re
activity = "Basketball - Girls 9th"
activity = re.sub(r'\s', ' ', activity).split('-')
activity = str(activity [1:2][0]).strip() + ' ' + str(activity [0:1][0])
print(activity)

输出:

Girls 9th Basketball 
© www.soinside.com 2019 - 2024. All rights reserved.