我需要将字符串分成类似以下内容的变量:
string = "Hello: My name is..."
title, separator, my_name_is = string.partition(": ")
但是,即使在初始字符串中只有“我的名字是...”,我也需要始终在变量“ my_name_is”中使用“我的名字是...”的字符串。 我认为可以这样做:
>>>string = "My name is..."
>>>title, separator, my_name_is = string.partition(": ")
>>>if my_name_is == "":
>>> my_name_is = title
>>>print(my_name_is)
My name is...
但是我必须将此代码放在一行中,并且不能使用RE(学校的任务)
答案 0 :(得分:1)
如果必须在一行中没有任何导入,那么这将做得很好:
string = "Hello: My name is..."
(title, my_name_is), separator = string.split(': ') if ':' in string else (None, string), ':'
print(title)
print(separator)
print(my_name_is)
# Hello
# :
# My name is...
如果string
没有“标题”,这也可以使用:
string = "My name is..."
(title, my_name_is), separator = string.split(': ') if ':' in string else (None, string), ':'
print(title)
print(separator)
print(my_name_is)
# None
# :
# My name is...
尽管如此,我永远也不会做如此糟糕的事情。