Python 打印语句正确吗?
我必须添加str(iterMul(a,b))来获得我想要的。这是正确的方法吗Python 打印语句正确吗?,python,python-2.7,Python,Python 2.7,我必须添加str(iterMul(a,b))来获得我想要的。这是正确的方法吗 def iterMul(a,b): result = 0 while b > 0: result += a b -=1 return result a=int(raw_input('Enter an integer: ')) print('') b=int(raw_input('Enter an integer: ')) print('') print (s
def iterMul(a,b):
result = 0
while b > 0:
result += a
b -=1
return result
a=int(raw_input('Enter an integer: '))
print('')
b=int(raw_input('Enter an integer: '))
print('')
print (str(a) + ' times '+str(b)+' is equal to '+ str(iterMul(a,b)))
提前谢谢 改用:
字符串格式在插入值时自动将整数转换为字符串,比打印值、“某些文本”、“其他值”、“更多文本”和“第三个值”更具可读性。请改用:
字符串格式在插入值时会自动将整数转换为字符串,并且比打印值、'some text',othervalue',more text and',thirdvalue更具可读性打印('')的意义是什么?为什么不直接使用尾行字符(例如
\n
)?格式化是正确的方法。但是一个快速简单的版本是使用,
而不是+
来组合要打印的项目:打印a,'times',b,'等于',iterMul(a,b)
@F3AR3DLEGEND:好问题,但后续内容有点混乱<代码>打印('\n')将打印两个空行。我认为您需要的只是print()
(对于Python3)或print
(对于Python2)。(顺便说一句,我见过人们使用print(“”)
,因为在Python 2和Python 3中打印一个空行是最短的事情……但我认为OP没有这样做。)@abarnert33-我相信他只是想在要打印的字符串中添加换行符…@abarnert这就是我的意思。如果要打印两件事,中间有一行,可以执行以下操作:print('line1\n\nline2')
。第一个\n
将光标放在下一行,下一行也会这样做。因此,它将在一行上打印'line1'
,中间有一个空行,然后打印'line2'
。打印(“”)
的意义是什么?为什么不直接使用尾行字符(例如\n
)?格式化是正确的方法。但是一个快速简单的版本是使用,
而不是+
来组合要打印的项目:打印a,'times',b,'等于',iterMul(a,b)
@F3AR3DLEGEND:好问题,但后续内容有点混乱<代码>打印('\n')将打印两个空行。我认为您需要的只是print()
(对于Python3)或print
(对于Python2)。(顺便说一句,我见过人们使用print(“”)
,因为在Python 2和Python 3中打印一个空行是最短的事情……但我认为OP没有这样做。)@abarnert33-我相信他只是想在要打印的字符串中添加换行符…@abarnert这就是我的意思。如果要打印两件事,中间有一行,可以执行以下操作:print('line1\n\nline2')
。第一个\n
将光标放在下一行,下一行也会这样做。因此,它将在一行上打印'line1'
,中间有一个空行,然后打印'line2'
。正如有人在评论中指出的那样,这里不需要字符串格式:只需将更多参数传递给print
@delnan:当然,但字符串格式通常是一个更好的主意。我不同意。它增加了不必要的嵌套和复杂性——多参数版本更平坦,至少对我来说可读性也一样。如果是这样,则此代码和注释都将引发一个SyntaxError
。但是,这段代码的优点是,只要将它括在括号中,它就可以同时处理2和3,而在注释版本中,将它括在括号中会使2打印出一个丑陋的元组,而不是预期的漂亮字符串。@abarnert:它最初只是用python-2.7
标记的。在Python2上用括号括起表达式不是一个好主意print(1,2)
将在2或3中打印完全不同的内容。正如有人在评论中指出的,这里不需要字符串格式:可以将更多参数传递给print
@delnan:当然可以,但字符串格式通常是一个更好的主意。我不同意。它增加了不必要的嵌套和复杂性——多参数版本更平坦,至少对我来说可读性也一样。如果是这样,则此代码和注释都将引发一个SyntaxError
。但是,这段代码的优点是,只要将它括在括号中,它就可以同时处理2和3,而在注释版本中,将它括在括号中会使2打印出一个丑陋的元组,而不是预期的漂亮字符串。@abarnert:它最初只是用python-2.7
标记的。在Python2上用括号括起表达式不是一个好主意<代码>打印(1,2)
将在2或3中打印完全不同的内容。
print '{0} times {1} is equal to {2}'.format(a, b, iterMul(a,b))