簡體   English   中英

從模塊導入時,Python 3、5 / 2給出2而不是2.5

[英]Python 3, 5/2 when importing from module gives 2 and not 2.5

我在python 3中制作了一個計算器程序,並且已將該程序拆分為模塊。 我在一個模塊中做了一個減法函數,該模塊只取兩個數字並用法線/運算符除。 但是,它似乎像/從python 2和5/2一樣給了我2,而不是2.5。 但是,我嘗試制作一個新文件,其中所有文件都是print(5/2),這給了我2.5。 我嘗試重新安裝python無濟於事。 我有最新版本(3.4.3)。 我搞砸了還是這是一個錯誤?

計算器:

import operation
import formula
import time
print("\n")
run = True
while run:
try:
    print("1: Addittion")
    print("2: Subtraction")
    print("3: Multiplication")
    print("4: Division")
    print("5: Advanced")
    print("6: Quit")
    print("\n")

    choice = int(input("What would you like to do? "))
    print("\n")

    if choice == 1:
        operation.add()

    elif choice == 2:
        operation.subtract()

    elif choice == 3:
        operation.multiply()

    elif choice == 4:
        operation.divide()

        try:
            answer = numberA / numberB

        except ZeroDivisionError:
            print("ERROR: DIVIDE BY ZERO")
            print("\n")

        else:
            print("%d / %d = %d" % (numberA, numberB, answer))
            print("\n")

    elif choice == 5:
        print("1: Arithmetic Sequences")
        print("2: Geometric Sequences")
        print("3: Pythagorean Theorem")
        print("4: Median")
        print("5: Go Back")
        print("\n")

        choice = int(input("What would you like to do? "))
        print("\n")

        if choice == 1:
            formula.arithmetic()

        elif choice == 2:
            formula.geometric()

        elif choice == 3:
            formula.pythagorean()

        elif choice == 4:
            operation.median()

        elif choice == 5:
            pass

        else:
            print("ERROR: PLEASE ENTER A VALID OPTION (1-5)")
            print("\n")

    elif choice == 6:
        pass
        time.sleep(3)
        run = False

    else:
        print("ERROR: PLEASE ENTER A VALID OPTION (1-6)")
        print("\n")

except ValueError:
    print("\n")
    print("ERROR: PLEASE ONLY USE NUMBERS")
    print("\n")

模塊:

def divide():
numberA = int(input("What is the dividend? "))
numberB = int(input("What is the divisor? "))
print("\n")

try:
    answer = numberA / numberB

except ZeroDivisionError:
    print("ERROR: DIVIDE BY ZERO")
    print("\n")

else:
    print("%d / %d = %d" % (numberA, numberB, answer))
    print("\n")

注意:該模塊中實際上還有其他等式(-,x和+),但我沒有包括它們,因為我認為您不需要它們。 告訴我你是否想看他們

您使用整數說明符進行格式化。 請嘗試使用此方法。

print('{} / {} = {}'.format(numberA, numberB, answer))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM