我有多个字符串变量,我想把它们连接成一行,但要用分隔符:
var_a + 'SEPARATOR' + var_b + 'SEPARATOR' + var_c + 'SEPARATOR' + var_d
如你所见,它看起来很恶心,效率也很低。
那么,有没有办法通过在不同的字符串之间自动添加分隔符来使其变得更简单呢?
附言:我喜欢它在打印功能中的工作方式:
print(var_a, var_b, var_c, var_d, sep="SEPARATOR")
发布于 2018-06-04 01:57:09
使用join()
函数:
words = [var_a,var_b,var_c,var_d]
my_separator = "this is a separator"
my_expected_sentence= my_separator.join(words)
更新:你也可以使用你的自定义方法:
def my_join(args, sep):
sentence=""
for i in args:
sentence+=i+sep
return sentence
words=["abc","def","ghi"]
data = my_join(words,'hello')
print(data)
通过这种方式,您可以在每个words.Like之前添加分隔符:
def my_preceding_join(args, sep):
sentence=""
for i in args:
sentence+=sep+i
return sentence
data = my_preceding_join(words,'hello')
print(data)
发布于 2018-06-04 01:52:35
您可以使用str.join
def custom_join(*args, sep=''):
return sep.join(args)
print(custom_join('a', 'b', 'c', 'd', 'e', 'f', sep="SEPARATOR"))
输出:
aSEPARATORbSEPARATORcSEPARATORdSEPARATOReSEPARATORf
发布于 2018-06-04 01:52:45
我会使用join
,比如:
mystring = 'SEPARATOR'.join([var_a, var_b, var_c, var_d])
print(mystring)
这回答了你的问题吗?
https://stackoverflow.com/questions/50669309
复制相似问题