在运行代码时,我得到了一个输出,
vivek
Hello World!
" vivek"之间有换行符。和#34;你好世界",但我想要一个没有换行的输出
vivek
Hello World
如上所述
# Hello World program in Python
arr =['vivek\n','singh\n']
arr[0].replace('\n','')
print arr[0]
print "Hello World!"
答案 0 :(得分:1)
只需替换
行arr[0].replace('\n','')
通过
arr[0] = arr[0].replace('\n', '')
因为str.replace
仅返回修改后的副本而不修改原始副本。请参阅str.replace
documentation。
您还可以使用str.strip
删除周围的空格。删除列表的所有周围空格的简洁方法是
yourlist = [strelement.strip() for strelement in yourlist]
您可能还希望将print
用作函数而不是语句。因此,您使用print("whatever")
代替print "whatever"
。 print函数适用于Python 2和Python 3,而该语句仅适用于Python 2。
然后,您可能需要查看http://pep8online.com/和https://www.python.org/dev/peps/pep-0008/
答案 1 :(得分:0)
您还可以执行拆分和联接,从列表中删除新行:
arr = ['vivek\n', 'singh\n']
arr = ''.join(arr).split('\n')
print(arr[0] + " Hello World!")
或
print(arr[0])
print(" Hello World!")
答案 2 :(得分:0)
因为attr [0]是一个字符串,string.replace只返回更新后的字符串的副本,但不会更改原始字符串。
答案 3 :(得分:0)
您也可以使用正则表达式删除:
>>> import re
>>> result = re.sub(u"\u005cn", r"", "vivek\n Hello World!")
>>> result
'Vivek Hello World!'
答案 4 :(得分:-1)
您可以使用 regular expressions过滤掉字符串中不需要的字符。
import re
s = "hello\nworld"
print re.sub(r'\n',' ',s)
将返回:" hello world"
所以你需要做的就是
print re.sub(r'\n','',arr[0])