Python 为什么在打印整数的中间有空格?

Python 为什么在打印整数的中间有空格?,python,python-3.x,Python,Python 3.x,我目前正在repl.it上做一个教程,并在web开发中使用了这个网站。我无法理解如何处理这个问题,我认为我把其他的事情都搞定了,除了Python 3打印出来的中间有一个空白。 问题是: 给定一个两位数的整数,交换其位数并打印结果 我编写的代码如下: a = int(input()) b = int(a / 10) c = int(a % 10) print(c, b) 当我将示例输入放入79时,它似乎交换正确,但它留下了一个空格,我知道这在技术上是一个字符,是错误的 Input: 79 O

我目前正在repl.it上做一个教程,并在web开发中使用了这个网站。我无法理解如何处理这个问题,我认为我把其他的事情都搞定了,除了Python 3打印出来的中间有一个空白。 问题是: 给定一个两位数的整数,交换其位数并打印结果

我编写的代码如下:

a = int(input())
b = int(a / 10) 
c = int(a % 10)
print(c, b)
当我将示例输入放入79时,它似乎交换正确,但它留下了一个空格,我知道这在技术上是一个字符,是错误的

Input: 79

Output: 9 7
谢谢你的回答

问题 print语句中的逗号告诉python放一个空格

解决方案 您希望将两个整数作为字符串放在一起,因此这是最佳路径:

a=int(输入())
b=整数(a/10)
c=int(a%10)
打印(“{0}{1}”。格式(c,b))
正在试验代码 我邀请您尝试一些格式字符串的变体,以更好地理解它的工作原理

例1

print({0}和{1})。格式(7,9))
#产出:7和9
检查更改字符串内部或format函数中的字符时发生的情况

例2

print(“我的名字是{0},{0}喜欢{1}!”。格式(“Samy”,“pie”))
#输出:我的名字是萨米,萨米喜欢馅饼!
我希望format函数可以在字符串中执行替换,这一点变得很清楚

“{0}”被替换为格式调用的第一个参数。 “{1}”被替换为格式调用的第一个参数。 等等

您可以有其他参数:

例3

print(“我最喜欢的数字是{0}、{1}、{2}和{3}”。.format(9,23,45,97))
#输出:我最喜欢的数字是9、23、45和97。
更多信息 我最喜欢的学习python的方法总是反复试验,并尝试代码。一直以来,语言都希望我这样做,但另一个学习的好方法是阅读规范

请访问格式化函数的规范:

您将了解有关函数的所有知识

最显著的是

字段_name本身以arg_name开头,arg_name是数字或关键字。如果是数字,则表示位置参数;如果是关键字,则表示命名关键字参数。如果格式字符串中的数字arg_名称为0、1、2。。。按顺序,它们都可以省略(不仅仅是一些),数字0、1、2。。。将自动按该顺序插入


请注意,字段名称指的是
{}

内部的内容,您可以使用
打印(…,sep='')
str
数字并连接。打印中的
添加空格。您可以按照上面的注释更改seroperator,或者您可以执行类似于
print(f{c}{b}”)
或者甚至
print(str(c)+str(b))
(尽管我建议使用格式字符串)。或者
print(c*10+b)
我可以问一下还有哪些分隔符可以代替逗号工作吗,我现在知道其中添加了一个空格?^^^^使用
。这里根本不需要格式化
。您可以使用
print
中的
sep
参数来执行此操作。或者,
f'{c}{b}'
在较新的Python版本中使用新的格式化选项。请您逐步解释此操作的作用?我是一个相对较新的人,我发现很难理解这里发生的所有错综复杂的事情。@Esmooth39你试过这个例子吗?@Samybencher如果是的,我试过,但是我不明白它是如何工作的。我很高兴它确实如此,但我做教程的全部目的是为了让我能够理解它是如何工作的。我只是想知道你能不能给我解释一下,因为我不明白你用了什么函数,它们是如何工作的,等等。