如果有数字,我想将该数字分为3部分。 例如:num = 4563289 这些必须分成45 63 289
我只是数数。
count = 0
num = int(raw_input("enter the number :"))
while (num > 0):
num = num//10
count = count + 1
print ("Total number of digits:", count)
if count % 2 == 0:
print('even')
else:
print('Odd')
使用此代码来识别它是奇数还是偶数。 基于此,我想将数字分为3部分。
答案 0 :(得分:1)
制作整数字符串并找到其长度。像这样:
num = 4563289
num_str = (str(num))
a = int(len(num_str) / 3)
print('{} {} {}'.format(num_str[:a], num_str[a:2*a], num_str[2*a:]))
(结果为45 63 289
)
答案 1 :(得分:0)
假设您的缩进应如下所示:
count = 0
num = int(raw_input("enter the number :"))
while (num > 0):
num = num//10
count = count + 1
print ("Total number of digits:", count)
if count % 2 == 0:
print('even')
else:
print('Odd')
最后,您无法再分割数字,因为它已在while循环中修改,直到它变为0。如果运行它并让程序在最后打印num变量,则它总是显示为0。因为这就是您要告诉程序执行的操作。在我看来,修改原始变量绝不是一个好主意,尤其是因为它不容易检索。
无论如何,使用len()
函数可以通过一种简便的方法来判断数字的位数是奇数还是偶数:
num = int(raw_input("enter the number :"))
num_str = str(num)
print ("Total number of digits: " + str(len(num_str)))
if len(num_str) % 2 == 0:
print ("Number of digits is even")
else:
print ("Number of digits is odd")
将输入转换为字符串是有道理的,因为它可以轻松确定其长度,并有助于我们以后将数字切成薄片。现在进行拼接,可能不是最优雅的解决方案,但它可以工作:
if len(num_str) >= 3:
newnum = str(num_str[0:2] + " " + num_str[2:4] + " " + num_str[4:])
print (newnum)
答案 2 :(得分:0)
num = int(input('enter the Number you want check: ')
if num > 0 :
for i in range(0,num):
if ( num % 2) == 0:
print('its a even number')
break
else:
print('Its a odd number')
else:
print('its even number')