我写了这段代码,它给了我一个列表作为输出而没有括号
示例4,3,2,1
,我想返回[4,3,2,1]
。
请告诉我我的小错误。
def inverse(mdg):
i = 0
Sr = ''
while i < len(mdg):
Sr =Sr + mdg[-(i+1)]
i = i+1
return Sr
ch = (input('Veuillez entrer une liste des valeurs separees par virgules: '))
l1 = list(ch.split(','))
print((",".join(inverse(l1))))
答案 0 :(得分:2)
首先,您要返回的字符串不是列表
如果这就是您想要的,只需将[
添加到开头,将]
添加到字符串末尾,就像这样
<强>修饰:强>
def inverse(mdg):
i = 0
Sr = ''
while i < len(mdg):
Sr =Sr + mdg[-(i+1)]
i = i+1
return Sr
ch = (input('Veuillez entrer une liste des valeurs separees par virgules: '))
l1 = list(ch.split(','))
print("["+",".join(inverse(l1))+"]")
尝试添加到list
而非string
以返回列表
<强>代码:强>
def inverse(mdg):
i = 0
Sr = [] # Create list
while i < len(mdg):
Sr += mdg[-(i+1)] # Add to list
i = i+1
return Sr # Return list
ch = input('Veuillez entrer une liste des valeurs separees par virgules: ')
l1 = ch.split(',')
print(inverse(l1))
<强>输出:强>
Veuillez entrer une liste des valeurs separees par virgules: 1,2,3,4
['4', '3', '2', '1']
没有必要创建一个函数来反转列表,就像这个
一样简单<强>代码2:强>
ch = input('Veuillez entrer une liste des valeurs separees par virgules: ')
l1 = ch.split(',')
print(l1[::-1]) # Reverses the list
如果您需要数字列表
,则输出是字符串列表在打印前使用此代码段
<强>片段:强>
print (map(int,listofstrings)) # Prints list of numbers
答案 1 :(得分:1)
问题是关于返回字符串,如'[4,3,2,1]',而不是列表。 还需要删除“元素。
代码
def inverse(mdg):
"""This function reversed string without quotemark of reversed list of splitted input by ','
"""
return ",".join(reversed(mdg.split(','))).join(["[", "]"])
样品
>>> ch = (input('Veuillez entrer une liste des valeurs separees par virgules: '))
Veuillez entrer une liste des valeurs separees par virgules: 1,2,3,4
>>> inverse(ch)
'[4,3,2,1]'
>>> print(inverse(ch))
[4,3,2,1]
或者只是添加'.join([“[”,“]”])
def inverse(mdg):
i = 0
Sr = ''
while i < len(mdg):
Sr =Sr + mdg[-(i+1)]
i = i+1
return Sr
ch = (input('Veuillez entrer une liste des valeurs separees par virgules: '))
l1 = list(ch.split(','))
print((",".join(inverse(l1)).join(['[',']'])))