Python 输入0-9之间的四位数字,并生成四(4)位数字的新组合,

Python 输入0-9之间的四位数字,并生成四(4)位数字的新组合,,python,Python,为了了解您可以如何帮助我,对于一个类,我需要用Python创建一个程序,输入0-9之间的四位数字,并生成四(4)位数字的新组合 例如: 我输入的号码 1348年 根据我输入的数字,程序创建一个新的数字组合,并在第一个数字2348上加1 然后,生成第二个数字并仅在第二个数字1448上加1 然后生成第三个数字,只在第三个数字1358上加1 然后生成第四个数字,仅在第四个数字m、1349上加1 程序只能接受数字,不能超过四位数 这是我创建的代码: print """ -----------------

为了了解您可以如何帮助我,对于一个类,我需要用Python创建一个程序,输入0-9之间的四位数字,并生成四(4)位数字的新组合

例如:

我输入的号码

1348年

根据我输入的数字,程序创建一个新的数字组合,并在第一个数字2348上加1

然后,生成第二个数字并仅在第二个数字1448上加1

然后生成第三个数字,只在第三个数字1358上加1

然后生成第四个数字,仅在第四个数字m、1349上加1

程序只能接受数字,不能超过四位数

这是我创建的代码:

print """
-------------------------------------------------------
|                           Number Generator                                |
-------------------------------------------------------
"""
print 
winnum = raw_input("Enter last wining 4 numbers separated from 0 to 9 by spaces: ")
items = winnum.split()
lst2 = [eval(x) for x in items]
print 
print
print"1 number this week: ", lst2[0]+1,lst2[1],lst2[2],lst2[3]
print
print"2 number to play this week: ",lst2[0],lst2[1]+1,lst2[2],lst2[3]
print
print"3 number to play this week: ",lst2[0],lst2[1],lst2[2]+1,lst2[3]
print
print"4 number to play this week: ",lst2[0],lst2[1],lst2[2],lst2[3]+1 
print

您跳过了关于“如果添加时的结果大于9,则返回0”的部分

导入系统 如果系统版本信息[0]<3: #Python2.x inp=原始输入 其他: #Python3.x inp=输入 def下一位数字(i): 返回(i+1)%10 def main(): prompt=“请输入4位数字,以空格分隔:” a、 b,c,d=[inp(prompt).split()中的int(i)表示i] 打印(“组合1:{}{}{}}”。格式(下一位数字(a、b、c、d)) 打印(“组合2:{}{}{}}”。格式(a,下一位数字(b,c,d)) 打印(“组合3:{}{}{}}”。格式(a,b,下一位数字(c,d)) 打印(“组合4:{}{}{}}”。格式(a、b、c、下一位数字(d))) 如果名称=“\uuuuu main\uuuuuuuu”: main()
“但我认为这是错误的”那么,您的测试说明了什么?需要查看实际输出与预期输出。
eval(x)
?哎哟。。。请改用
int(x)
。@timgeb对不起,我想我表达的是错误的,我创建的代码会生成一个带和的数字,但如果数字是9,它会返回数字10。不能有数字10。@JacobIRR实际输出:如果输入数字9,代码输出10。预期输出:我输入的数字1348基于该数字,程序创建一个新的数字组合,并在其第一个数字2348上加1。然后生成第二个数字,并仅将1添加到第二个数字1448。然后生成第三个数字,并仅将1添加到第三个数字1358。然后生成数字并仅将1添加到第三个数字1358。然后生成第四个数字,只在第四个数字1349上加1。非常感谢,效果非常好!我对编程非常笨拙,我想我永远不会成为Python程序员
import sys

if sys.version_info[0] < 3:
    # Python 2.x
    inp = raw_input
else:
    # Python 3.x
    inp = input

def next_digit(i):
    return (i + 1) % 10

def main():
    prompt = "Please enter 4 digits separated by spaces: "
    a, b, c, d = [int(i) for i in inp(prompt).split()]

    print("Combo 1: {} {} {} {}".format(next_digit(a), b, c, d))
    print("Combo 2: {} {} {} {}".format(a, next_digit(b), c, d))
    print("Combo 3: {} {} {} {}".format(a, b, next_digit(c), d))
    print("Combo 4: {} {} {} {}".format(a, b, c, next_digit(d)))

if __name__ == "__main__":
    main()