我正在尝试编写一个将获取列表并将其转换为由-
或,
分隔的字符串的函数。
我必须为此使用一个循环,所以我提出了以下内容。
我的问题是我无法摆脱尾随的分隔符。有任何想法吗?
输出为:String is r-i-n-g-i-n-g-
应该是:String is r-i-n-g-i-n-g
#A list created for the purpose of converting it to a string)
c_list = ['r', 'i', 'n', 'g', 'i', 'n', 'g']
# Function to_string()
def to_string(my_list, sep=', '):
counter = 0
mystring = ''
for n in my_list:
n = str(n)
mystring = mystring + n
mystring = mystring + sep
return mystring
print('String is', to_string(c_list, '-'))
最佳答案
您可以改用str.join
方法:
print('String is', '-'.join(c_list))
但是,如果需要使用循环,则可以使添加分隔符成为循环中的第一件事,但要以
mystring
中已经存在的内容为条件,以便它不会在其中添加分隔符第一次迭代:c_list = ['r', 'i', 'n', 'g', 'i', 'n', 'g']
# Function to_string()
def to_string(my_list, sep=', '):
counter = 0
mystring = ''
for n in my_list:
if mystring:
mystring = mystring + sep
n = str(n)
mystring = mystring + n
return mystring
print('String is', to_string(c_list, '-'))
关于python - 字符串的多余尾随串联,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52694922/