将 URL 个标题转换为标准标题
Converting URL titles to standard titles
假设我有以下列表
[('2015-2016-regular', '2016-playoff'), ('2016-2017-regular', '2017-playoff'), ('2017-2018-regular',)]
代表前两个完整的 NHL 年份和当前年份。
我想转换它,这样它就会给我
[('Regular Season 2015-2016 ', 'Playoff 2016'), ('Regular Season 2016-2017', 'Playoff 2017'), ('Regular Season 2017-2018 ',)]
我英文不好,写的就当标题了。最后一个列表有没有错误?
我如何构造一个函数来按照 80 个字符长的标准进行此类转换?
这有点老套,但这是一个奇怪的问题和用例,哦,好吧。由于您的替换集非常有限,您可以只使用 dict
来定义它们,然后使用带有字符串格式的列表理解:
repl_dict = {
'-regular': 'Regular Season ',
'-playoff': 'Playoff '
}
new_list = [
tuple(
'{}{}'.format(repl_dict[name[name.rfind('-'):]], name[:name.rfind('-')])
for name in tup
)
for tup in url_list
]
我试过了。所以,我解压了元组。我知道我必须在哪里分开,加入哪些部分并做必要的事情。 capitalize()
函数用于将第一个字母转为大写。另外我需要注意元组是否有一个或两个元素。
l = [('2015-2016-regular', '2016-playoff'), ('2016-2017-regular', '2017-playoff'), ('2017-2018-regular',)]
ans = []
for i in l:
if len(i)==2:
fir=i[0].split('-')
sec = i[1].split('-')
ans.append((fir[2].capitalize()+" "+fir[0]+'-'+fir[1],sec[1].capitalize()+" "+sec[0]))
else:
fir=i[0].split('-')
ans.append((fir[2].capitalize()+" "+fir[0]+'-'+fir[1],))
print ans
输出:
[('Regular 2015-2016', 'Playoff 2016'), ('Regular 2016-2017', 'Playoff 2017'), ('Regular 2017-2018',)]
假设我有以下列表
[('2015-2016-regular', '2016-playoff'), ('2016-2017-regular', '2017-playoff'), ('2017-2018-regular',)]
代表前两个完整的 NHL 年份和当前年份。
我想转换它,这样它就会给我
[('Regular Season 2015-2016 ', 'Playoff 2016'), ('Regular Season 2016-2017', 'Playoff 2017'), ('Regular Season 2017-2018 ',)]
我英文不好,写的就当标题了。最后一个列表有没有错误?
我如何构造一个函数来按照 80 个字符长的标准进行此类转换?
这有点老套,但这是一个奇怪的问题和用例,哦,好吧。由于您的替换集非常有限,您可以只使用 dict
来定义它们,然后使用带有字符串格式的列表理解:
repl_dict = {
'-regular': 'Regular Season ',
'-playoff': 'Playoff '
}
new_list = [
tuple(
'{}{}'.format(repl_dict[name[name.rfind('-'):]], name[:name.rfind('-')])
for name in tup
)
for tup in url_list
]
我试过了。所以,我解压了元组。我知道我必须在哪里分开,加入哪些部分并做必要的事情。 capitalize()
函数用于将第一个字母转为大写。另外我需要注意元组是否有一个或两个元素。
l = [('2015-2016-regular', '2016-playoff'), ('2016-2017-regular', '2017-playoff'), ('2017-2018-regular',)]
ans = []
for i in l:
if len(i)==2:
fir=i[0].split('-')
sec = i[1].split('-')
ans.append((fir[2].capitalize()+" "+fir[0]+'-'+fir[1],sec[1].capitalize()+" "+sec[0]))
else:
fir=i[0].split('-')
ans.append((fir[2].capitalize()+" "+fir[0]+'-'+fir[1],))
print ans
输出:
[('Regular 2015-2016', 'Playoff 2016'), ('Regular 2016-2017', 'Playoff 2017'), ('Regular 2017-2018',)]