Cel mai bun răspuns
Nu există o echivalență directă, deoarece Python este foarte diferit de scanf.
scanf „încercări” de a analiza linia de intrare și stochează valorile în variabile, nu verifică limite, de exemplu, de șiruri de intrare; motiv pentru care este recomandat să utilizați fgets și apoi să vă scrieți propriul parser pentru linia de intrare așteptată.
Cel mai apropiat Python echivalentul fgets este fie
- fișier . citit : unde fișierul este un fișier deschis (poate sys .stdin )
sau la o apăsare:
- (Python3) sau raw\_input (Python2)
input / raw\_input funcțiile nu sunt direct echivalente cu fgets deoarece :
- fgets este limitat la numărul de caractere citite, input / raw\_input nu sunt lim ited; citesc când se apasă returnarea.
- fgets pot prelua intrări din orice fișier deschis – input / raw\_input preia date numai din programele stdin .
- fgets nu afișează un prompt – input / raw\_input poate emite un prompt opțional către programele stdout .
Răspuns
Puteți utiliza raw\_input („prompt” ”) Funcție.
Intrarea va fi șir implicit. Trebuie să-l convertiți în int, boolean, float etc. etc conform cerințelor dvs.
Dacă luați mai multe intrări în același timp delimitate de spațiu, utilizați:
[x , y] = raw\_input (). split („„)
Mă bucur să răspund,