我进入编程简介课程仅三周,所以请耐心等待我!
我正在编写如下代码:
number1 = input('Enter the first number: ')
number1 = int(number1)
number2 = input('Enter the second number: ')
number2 = int(number2)
number3 = input('Enter the third number: ')
number3 = int(number3)
ratio12 = int(number1 / number2)
ratio13 = int(number1 / number3)
ratio23 = int(number2 / number3)
print('The ratio of', + number1, '+', + number2,'is', + ratio12, '.')
print('The ratio of', + number1, '+', + number3,'is', + ratio13, '.')
print('The ratio of', + number2, '+', + number3,'is', + ratio23, '.')
代码功能正常(最终),但我似乎无法在打印语句的句号之前删除空格。我有办法做到这一点吗?
答案 0 :(得分:3)
发生这种情况的原因是因为您在print语句中使用逗号。在python中有几种方法可以为print语句提供多个变量,你似乎将它们中的两个混合在一起。方法如下。
print('The ratio of ' + str(number1) + ' + ' + str(number2) + ' is ' + str(ration12) + '.')这种方式可能是最基本的方式。它将连接字符串而不在它们之间添加任何字符(例如,除非您明确添加它们之间,否则它们之间不会有空格。)另请注意,字符串连接不会自动将整数转换为字符串。
print('The ratio of', number1, '+', number2, 'is', ration12, '.')这将自动在每个参数之间添加空格,并且就是您的情况。可以通过将关键字参数传递给print函数来更改分隔符(默认为空格)。例如,
print('i = ', i, sep='')
print('The ratio of {} + {} is {}.'.format(number1, number2, ratio12))这种方式是最可读的,也是最好的方式。它将使用基于format函数的参数替换“模板”字符串中的“{}”部分。它按顺序执行此操作,但您可以添加类似此“{0}”的索引,以通过索引显式使用参数。
答案 1 :(得分:1)
有些string formating让您的生活更轻松:
number1 = 1
number2 = 2
ratio12 = number1 / number2
print('The ratio of {} + {} is {}.'.format(number1, number2, ratio12))
输出:
The ratio of 1 + 2 is 0.5.
答案 2 :(得分:0)
您可以控制"分隔符"使用print
的sep
参数:
print('The ratio of', + number1, '+', + number2,'is', + ratio12, '.', sep='')
请注意,这也会改变其他项目之间的间距。
此外 - 您不需要额外的+
运营商。这是一个没有空格的版本,并且在我认为你想要的地方添加了显式空格:
print('The ratio of ', number1, ' + ', number2, ' is ', ratio12, '.', sep='')
答案 3 :(得分:0)
当你给它多个逗号分隔的参数时,这就是print的工作方式。这背后的逻辑是,当你很快想要打印一堆变量时,手动添加宽空间是一件痛苦的事。
嗯,有一件事要尝试:摆脱print语句中的所有,
。您可以使用+
符号链接字符串。
所以,
print('The ratio of ' + str(number1) + ' ' + str(number2) + ' is ' + str(ratio12) + '.')
如果您需要更好地控制格式,您需要查看format
函数。
print("The ratio of {} + {} is {}.".format(number1, number2, ratio12))
答案 4 :(得分:0)
您对连接功能和打印字段感到困惑。如果您要连接所有这些字符串,只需使用连接。逗号包括默认分隔符。
print('The ratio of', number1, '+', number2,'is', str(ratio12) + '.')
答案 5 :(得分:0)
尝试以这种方式写信:
print('The ratio of %d + %d is %d.' %(number1, number2, ratio12))
print('The ratio of %d + %d is %d.' %(number1, number3, ratio13))
print('The ratio of %d + %d is %d.' %(number2, number3, ratio23))