Echivalent în Python la System(‘PAUSE’) (Programare, Python, Python 3.X)

MaxxB a intrebat.

Am codat un calculator de bază în python 3.3 și vreau să îl pot rula în fereastra de comandă.

dar de îndată ce ajung la sfârșit se închide fereastra înainte de a avea timp să vizualizez răspunsul final.

așa că mă întrebam dacă există un echivalent al comenzii System(‘PAUSE’) din c++ pentru a-i spune să nu meargă mai departe până când utilizatorul este gata.

Iată codul calculatorului meu:

print('Your Very Own Basic Calculator')
first_num = int(input('Please Enter The First Number: '))
second_num = int(input('Please Enter The Second Number: '))
Equation = input('What would you like to do, multiplication, division, subtraction or     
if Equation == ('*'):
addition? *, /, -, +')
    print('The Answer is',first_num * second_num)
elif Equation == ("/"):
    print('The Answer is',first_num / second_num)
elif Equation == ('-'):
    print('The Answer is',first_num - second_num)
elif Equation == ('+'):
    print('The Answer is',first_num + second_num)

mulțumesc

5 răspunsuri
Filip Malczak

Utilizați input() pe p3k sau raw_input() pe p2.7x – va citi orice din stdin, deci va aștepta până când utilizatorul este gata.

Comentarii

  • ceea ce am de gând să fac este doar să adaug o buclă While în așa fel încât când ajunge la sfârșit să te întrebe dacă vrei să faci o altă sumă, astfel încât să poți vedea ce a fost în timp ce te decizi dacă vrei să introduci o altă sumă. ar fi trebuit să mă gândesc la asta înainte, greșeala mea :/ dar mulțumesc @FilipMalczak –  > Por MaxxB.
TIMBERings
import time

time.sleep(secs)

Cealaltă opțiune este mai bună, dar aceasta răspunde și la întrebarea Dumneavoastră.

Jean-Christophe Gay

începând de astăzi acest lucru funcționează sub win7 :

import os
(...)
os.system("PAUSE")

Aveți grijă la majusculele din fragment, pauza nu este PAUSE.

Comentarii

  • Această funcție, la fel ca cea de la @S1lur, este specifică Windows, distribuțiile linux/unix vor arunca o eroare –  > Por nash.
S1lur
import os
...
os.system("pause")

aceasta ar trebui să facă treaba

Comentarii

  • sh: 1: pause: not found –  > Por leovp.
Ioannis E. Kommas

Iată un program simplu pentru a face calcule cu,A. „input()” care, practic, așteaptă ca utilizatorul să introducă o valoare și pe baza acestei valori calculează rezultatul, de asemenea, u va vedea B. While True: ceea ce înseamnă că programul nu se oprește niciodată (sau cel puțin utilizatorul introduce 2 decât i se cere să iasă) În cele din urmă o parte este pe limba greacă. (u va trebui să le traduceți)

import os

# Reads a Float number
def read(thesi):
    try:
        ask_me = f'Δώσε μου τον {thesi} αριθμό'
        os.system(f"say '{ask_me}'")
        number_a = float(input())
        return number_a
    except KeyboardInterrupt:
        print('Ζητήθηκε άμεση έξοδος από το πρόγραμμα')
        quit()
    except ValueError:
        print('Σφάλμα:')
        return read(thesi)

def continue_exit():
    try:
        accept_only = ('1', '2')
        ask_me = '1. Continue   2. Exit the Program'
        os.system(f"say '{ask_me}'")
        number= input()
        if number in accept_only:
            return number
        else:
            print('Try again')
            return continue_exit()
    except KeyboardInterrupt:
        print('Ζητήθηκε άμεση έξοδος από το πρόγραμμα')
        quit()
    except ValueError:
        print('Σφάλμα:')
        return continue_exit()

# Reads the type of the equation
def equation_read():
    lst = ['+', '-', '/', '*', 'mod', 'pow', 'div']
    ask_me = f'μαθηματική πράξη?'
    os.system(f"say '{ask_me}'")
    print('Input --> +  -  /  * mod pow div ')
    equation = input()
    if equation in lst:
        return equation
    print('Σφάλμα')
    return equation_read()


# Checks and does the math
def math(a ,b ,eq):
    forbiden_zero_division = ('/', 'mode', 'div')
    if b == 0 and eq in forbiden_zero_division:
        ask_me = f'Σφάλμα: Δεν επιτρέπεται διαίρεση με το 0'
        os.system(f"say '{ask_me}'")
        return 'Division by 0!'
    if eq == '+':
        ask_me = f'Ζητήθηκε πρόσθεση:'
        os.system(f"say '{ask_me}'")
        return a + b
    elif eq == '-':
        ask_me = f'Ζητήθηκε αφαίρεση:'
        os.system(f"say '{ask_me}'")
        return a - b
    elif eq == '/':
        ask_me = f'Ζητήθηκε διαίρεση:'
        os.system(f"say '{ask_me}'")
        return a / b
    elif eq == '*':
        ask_me = f'Ζητήθηκε πολλαπλασιασμός:'
        os.system(f"say '{ask_me}'")
        return a * b
    elif eq == 'mod':
        ask_me = f'Ζητήθηκε το υπόλοιπο διάιρεσης:'
        os.system(f"say '{ask_me}'")
        return a % b
    elif eq == 'pow':
        ask_me = f'Ζητήθηκε η δύναμη:'
        os.system(f"say '{ask_me}'")
        return a ** b
    elif eq == 'div':
        ask_me = f'Ζητήθηκε ακέραιη διαίρεση:'
        os.system(f"say '{ask_me}'")
        return a // b


while True:
    a = read('πρώτο')  # Read the First Number
    b = read('δεύτερο')  # Read the Second Number
    eq = equation_read()  # Read the Type of the equation
    result = math(a, b, eq) # Do the math
    print(result)
    ask_me = f'Αποτέλεσμα {result}'
    os.system(f"say '{ask_me}'")
    c_e = continue_exit()
    if c_e == '2':
        break