【问题标题】:Print the result of the operations on Python在 Python 上打印操作结果
【发布时间】:2022-12-05 23:22:07
【问题描述】:

我需要打印每个 Num 的结果来做鬼脸。通过输入三对数字,每个数字都会给你一个符号,最后我需要将之前收到的所有符号打印在一起。

Num1 = int(input("Tell me a whole number: "))

if Num1 % 6 == 0:
    print (":")
elif Num1 % 2 == 0:
    print("X")
elif Num1 % 3 == 0:
    print("8")
elif Num1 % 4 == 0:
    print ("=")
elif Num1 % 5 == 0:
    print("[")
elif Num1 % 1== 0:
    print(";")

Num2 = int(input("Tell me a whole number: "))

if Num2 % 4 == 0:
    print ("-")
elif Num2 % 2 == 0:
    print("-{")
elif Num2 % 3 == 0:
    print("<{")
elif Num2 % 1== 0:
    print("<")

Num3 = int(input("Tell me a whole number: "))

if Num3 % 7 == 0:
    print ('(')
elif Num3 % 2 == 0:
    print("O")
elif Num3 % 3 == 0:
    print("|")
elif Num3 % 4== 0:
    print("!")
elif Num3 % 5 == 0:
    print("/")
elif Num3 % 6 == 0:
    print("P")
elif Num3 % 1== 0:
    print(")")

我试过了,但它只会打印之前输入的数字,而不是符号。我能做些什么?

print(Num1, Num2, Num3)

【问题讨论】:

  • 天真的方法?在 if 语句中分配给另一个变量而不是 printing。更好的方法是将输入和预期输出映射到字典。

标签: python


【解决方案1】:

您应该首先在变量中分配数据然后打印它。

Num1 = int(input("Tell me a whole number: "))
data_1=None
data_2=None
data_3=None

if Num1 % 6 == 0:
    data_1=":"
    print(data_1)
elif Num1 % 2 == 0:
    data_1="X"
    print(data_1)
elif Num1 % 3 == 0:
    data_1="8"
    print(data_1)
elif Num1 % 4 == 0:
    data_1="="
    print(data_1)
elif Num1 % 5 == 0:
    data_1="["
    print(data_1)
elif Num1 % 1== 0:
    data_1=";"
    print(data_1)

Num2 = int(input("Tell me a whole number: "))

if Num2 % 4 == 0:
    data_2="-"
    print(data_2)
elif Num2 % 2 == 0:
    data_2="-{"
    print(data_2)
elif Num2 % 3 == 0:
    data_2="<{"
    print(data_2)
elif Num2 % 1== 0:
    data_2="<"
    print(data_2)

Num3 = int(input("Tell me a whole number: "))

if Num3 % 7 == 0:
    data_3='('
    print(data_3)
elif Num3 % 2 == 0:
    data_3="O"
    print(data_3)
elif Num3 % 3 == 0:
    data_3="|"
    print(data_3)
elif Num3 % 4== 0:
    data_3="!"
    print(data_3)
elif Num3 % 5 == 0:
    data_3="/"
    print(data_3)
elif Num3 % 6 == 0:
    data_3="P"
    print(data_3)
elif Num3 % 1== 0:
    data_3=")"
    print(data_3)

print(data_1,data_2,data_3)

【讨论】:

    【解决方案2】:

    顾名思义,print 会在控制台上打印一些内容。 当你想创建一张脸时,你应该而不是 print 将面部部分存储在一个变量中。

    在这里按照您的代码进行操作是一个较短的示例:

    face = ""
    num = int(input("Tell me a whole number: "))
    
    # IF num is divisible by 6
    if num % 6 == 0:
        # THEN concatenate ":" at the end of the string
        face += ":"
    # ELSE IF num is divisible by 2
    elif num % 2 == 0:
        # THEN concatenate "X" at the end of the string
        face += "X"
    
    # GET next number
    num = int(input("Tell me a whole number: "))
    # Concatenate next string part to face
    if num % 4 == 0:
        face += "-"
    elif num % 2 == 0:
        face += "-{"
    
    # Get last number
    num = int(input("Tell me a whole number: "))
    if num % 7 == 0:
        face += '('
    elif num % 2 == 0:
        face += "O"
    
    print(face)
    

    当输入数字6、4和7时,这将为您提供以下输出:

    :-(
    

    【讨论】:

      猜你喜欢
      • 2016-03-08
      • 2012-01-07
      • 2016-09-19
      • 2019-03-11
      • 1970-01-01
      • 2023-01-23
      • 2015-12-29
      • 2014-11-08
      • 2016-07-22
      相关资源
      最近更新 更多