如何删除';打印';python中的命令?
我是python新手,我使用的是v2.7如何删除';打印';python中的命令?,python,Python,我是python新手,我使用的是v2.7 #Filename:ReverseNumber.py data=int(raw_input("Enter any number: ")) print "Reverse of the number: ", while data!=0: a=data%10 print a, data=data/10 因此,输出应如下所示: Enter any number: 123 Reverse of the number: 321 但在第二行
#Filename:ReverseNumber.py
data=int(raw_input("Enter any number: "))
print "Reverse of the number: ",
while data!=0:
a=data%10
print a,
data=data/10
因此,输出应如下所示:
Enter any number: 123
Reverse of the number: 321
但在第二行中,它不是这样,而是在每个数字前多打印一个空格
如何克服这一问题?为存储倒数目的创建一个空变量,将每个数字附加到循环中,然后进行打印
a = ''
while data!=0:
a += data%10
data=data/10
print a
制作一个空变量用于存储反向数字,将每个数字附加到循环中,然后进行打印
a = ''
while data!=0:
a += data%10
data=data/10
print a
一种方法是在你准备好打印整批之前不要打印。下面是使用字符串的示例代码:
data = int (raw_input ("Enter any number: "))
if data == 0:
str = "0"
else:
str = ""
while data != 0:
str = "%s%d" % (str, data % 10)
data = data / 10
print "Reverse of the number: %s" % (str)
一种方法是在你准备好打印整批之前不要打印。下面是使用字符串的示例代码:
data = int (raw_input ("Enter any number: "))
if data == 0:
str = "0"
else:
str = ""
while data != 0:
str = "%s%d" % (str, data % 10)
data = data / 10
print "Reverse of the number: %s" % (str)
您可以通过多种方式修改您的方法: 创建一个值列表,然后使用空白字符串将其连接起来以进行打印:
out = []
while data != 0:
out.append(data % 10)
data /= 10
print ''.join(map(str, out))
您可以跳过整个整数转换步骤,只需反转传入字符串:
data = '123'
print data[-1::-1]
您可以跳过整数步骤并加入反转的结果:
data = '123'
print ''.join(reversed(data))
您可以在数字的打印命令中添加退格
:
while data != 0:
print '\b%d' % (data % 10)
data /= 10
希望其中有一个适合您的要求。您可以通过多种方式修改您的方法: 创建一个值列表,然后使用空白字符串将其连接起来以进行打印:
out = []
while data != 0:
out.append(data % 10)
data /= 10
print ''.join(map(str, out))
您可以跳过整个整数转换步骤,只需反转传入字符串:
data = '123'
print data[-1::-1]
您可以跳过整数步骤并加入反转的结果:
data = '123'
print ''.join(reversed(data))
您可以在数字的打印命令中添加退格
:
while data != 0:
print '\b%d' % (data % 10)
data /= 10
希望其中一个符合您的要求。打印
a
时有一个隐式空格
从python文档中:
在每个对象(转换和)写入之前写入空格,除非输出系统认为它位于行的开头。这种情况是(1)尚未写入标准输出的字符,(2)写入标准输出的最后一个字符是除“”以外的空白字符,或(3)当标准输出上的最后一次写入操作不是打印语句时。“
所以试试看
print "Reverse of the number:",
打印
a
时有一个隐式空格
从python文档中:
在每个对象(转换和)写入之前写入空格,除非输出系统认为它位于行的开头。这种情况是(1)尚未写入标准输出的字符,(2)写入标准输出的最后一个字符是除“”以外的空白字符,或(3)当标准输出上的最后一次写入操作不是打印语句时。“
所以试试看
print "Reverse of the number:",
为什么不简单地
print str(data)[::-1]
?为什么不简单地print str(data)[::-1]
?类型错误:无法连接'str'和'int'对象但在这里我会得到“类型错误:无法连接'str'和'int'对象”哇哦,我已经有一段时间没有使用python了,很抱歉出现了类型错误。虽然,这个概念很好,不是吗?TypeError:无法连接'str'和'int'对象但在这里我会得到“TypeError:无法连接'str'和'int'对象”哎呀,我已经有一段时间没有使用python了,很抱歉出现了TypeError。虽然这个概念很好,不是吗?在您的第一个解决方案中,map(str,out)
更简洁,速度更快。@ChrisWong-非常正确。谢谢我对其进行了编辑以反映这一建议。:)在您的第一个解决方案中,map(str,out)
更简洁,速度更快。@ChrisWong-非常正确。谢谢我对其进行了编辑以反映这一建议。:)虽然这将消除数字前的额外空格,但在他最初描述的方法中不会解决数字之间的空格。虽然这将消除数字前的额外空格,但在他最初描述的方法中不会解决数字之间的空格。