首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Python中不太复杂的连接

Python中不太复杂的连接
EN

Stack Overflow用户
提问于 2018-06-04 01:49:39
回答 5查看 161关注 0票数 0

我有多个字符串变量,我想把它们连接成一行,但要用分隔符:

代码语言:javascript
复制
var_a + 'SEPARATOR' + var_b + 'SEPARATOR' + var_c + 'SEPARATOR' + var_d

如你所见,它看起来很恶心,效率也很低。

那么,有没有办法通过在不同的字符串之间自动添加分隔符来使其变得更简单呢?

附言:我喜欢它在打印功能中的工作方式:

代码语言:javascript
复制
print(var_a, var_b, var_c, var_d, sep="SEPARATOR")
EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2018-06-04 01:57:09

使用join()函数:

代码语言:javascript
复制
    words = [var_a,var_b,var_c,var_d]
    my_separator = "this is a separator"
    my_expected_sentence= my_separator.join(words)

更新:你也可以使用你的自定义方法:

代码语言:javascript
复制
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之前添加分隔符:

代码语言:javascript
复制
def my_preceding_join(args, sep):
      sentence=""
      for i in args:
          sentence+=sep+i
      return sentence

    data = my_preceding_join(words,'hello')
    print(data)
票数 1
EN

Stack Overflow用户

发布于 2018-06-04 01:52:35

您可以使用str.join

代码语言:javascript
复制
def custom_join(*args, sep=''):
  return sep.join(args)

print(custom_join('a', 'b', 'c', 'd', 'e', 'f', sep="SEPARATOR"))

输出:

代码语言:javascript
复制
aSEPARATORbSEPARATORcSEPARATORdSEPARATOReSEPARATORf
票数 4
EN

Stack Overflow用户

发布于 2018-06-04 01:52:45

我会使用join,比如:

代码语言:javascript
复制
   mystring = 'SEPARATOR'.join([var_a, var_b, var_c, var_d])
   print(mystring)

这回答了你的问题吗?

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50669309

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档