如何在逗号后不打印空格

新手上路,请多包涵

这是我当前的代码。打印将在“!”之前放置一个空格我已经在论坛上搜索了一个小时,但现在对我来说一切都太复杂了。这是一个愚蠢的问题,但我必须知道为什么要在逗号后添加这个随机空格。

 fn = input("What's your First Name? ")
ln = input("What's your Last Name? ")
print ('Hello,',fn, ln,'!')

原文由 Yanni Asimacopoulos 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 975
2 个回答

当您打印字符串列表时,python 会插入一个空格。

 $ python3
Python 3.5.3 (v3.5.3:1880cb95a742, Jan 16 2017, 08:49:46)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> print('My','name','is','doug')
My name is doug
>>> print('My'+'name'+'is'+'doug')
Mynameisdoug

您想要将您的元素组合成一个字符串或(更好的方法)使用字符串格式来输出。

 >>> fn = "Bob"
>>> ln = "Jones"
>>> msg = "Hello, "+fn+" "+ln+"!"
>>> print(msg)
Hello, Bob Jones!
>>> msg = "Hello, {0} {1}!".format(fn,ln)
>>> print(msg)
Hello, Bob Jones!
>>>

原文由 WombatPM 发布,翻译遵循 CC BY-SA 3.0 许可协议

这是一个愚蠢的问题,但我必须知道为什么要在逗号后添加这个随机空格。

print 的默认设置是在逗号后添加空格。

! 之前删除空格的一种方法是:

 print('Hello,',fn, ln, end='')
print('!')

Out : Hello, First Last!

此处 end= 指定应在 print() 语句结束时打印的内容,而不是 default newline

另一种更简单的方法是 concatenate 字符串。 IE,

 print('Hello,',fn, ln + '!')

原文由 Kaushik NP 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题