微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何消除输入和标点符号之间的空格?

如何解决如何消除输入和标点符号之间的空格?

我正在尝试输出以下内容

What is your name? Amanda
How old are you? 15
    
Hello Amanda! You were born in 2005.

但我在标点符号前总是有空格:

Hello Amanda ! You were born in 2005 .

代码如下:

# User Input
usr_name = input('What is your name?')
usr_age = int(input('How old are you?'))
# Year Born Calculation
year_born = 2020 - usr_age
# Final Output
print('Hello',usr_name,'!','You were born in',year_born,'.')

谢谢!

解决方法

这是因为从技术上讲,Python 中的 print 语句在每次连接字符串时都会留下一个空格。这是该“方法”的默认设置。

大多数情况下,最好使用新的 Python 格式字符串。不过,您必须使用 Python 3.6+ 版。 Python 格式的字符串也称为“f-strings”。

print(f"Hello {usr_name}! You were born in {year_born}.")

使用 .format 也可以解决您的问题。这个需要 Python 3.0 及更高版本。

print("Hello {}! You were born in {}.".format(usr_name,year_born))

进一步阅读:Python's docs

,

您可以尝试将实际字符串连接作为另一种选择:

# User Input
usr_name = input('What is your name?')
usr_age = int(input('How old are you?'))
# Year Born Calculation
year_born = 2020 - usr_age
# Final Output
answer = 'Hello ' + usr_name + '! ' + 'You were born in ' + str(year_born) + '.'
print(answer)
,

默认情况下,print() 语句在其参数之间插入一个空格。要覆盖此功能,您可以使用 sep='' 参数:

print('Hello ',usr_name,'! ','You were born in ',year_born,'.',sep='')

或者您可以完全使用另一种方法:字符串集中(一个很好的实践,前一种方法仅适用于 print 语句)。

print('Hello ' + usr_name + '! ' + 'You were born in ' + year_born + '.')

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?