[PYTHON] Ich wollte es so machen, als würde ich einen Testfall für AtCoder ausführen.

Was ich machen wollte

Haben Sie jemals versucht, Funktionen wie das Testen von AtCoder-Code und die Online-Ausführung von yukicoder zu nutzen? Ich wünschte, ich könnte es in Python tun.

Kurz gesagt, ich wünschte, ich könnte die TXT-Datei mit Pythons input () lesen.

Diese Ausführungsumgebung ist Windows 10.

An der Eingabeaufforderung

Zunächst erstellen wir einen geeigneten Ordner und fügen die Datei input.txt für die entsprechende Eingabe und die Datei main.py mit der Funktion input () ein.

Wenn Sie in den Ordner wechseln, den Sie zuvor an der Eingabeaufforderung erstellt haben, und python main.py <input.txt eingeben, ist es seltsam, dass Sie ihn aus der Textdatei lesen können! !!

Übrigens funktioniert es auch, wenn Sie dies mit open (0) .read () tun.

In Python

Ich habe versucht, es mit einem Unterprozess zu tun und habe es nach Versuch und Irrtum 3 Tage lang getötet. Das ist Aho. Im folgenden Quellcode wird die Ausgabe ausgegeben, die mit der Druckfunktion ausgegeben wird. Die Timeout-Option hat ein Ausführungszeitlimit, shell = True, und funktioniert an einer echten Eingabeaufforderung. Die Ausgabe erfolgt übrigens im Bytetyp. Wenn Sie also einen Zeichenkettentyp erstellen möchten, kochen Sie ihn bitte mit encode () oder backen Sie ihn ...

In der offiziellen Dokumentation wird jedoch empfohlen, es nicht zu verwenden, da es sich um eine Sicherheitslücke handeln kann. Winodws Wenn Sie den Zauber der Zerstörung angeben, verschwinden nicht nur Python, sondern auch Windows ...

import subprocess
print(subprocess.check_output('python main.py < input.txt',timeout=5,shell=True))

Eigentlich außerdem ...

Es scheint, dass Sie mit der Funktion Popen () mehr Details tun können. Ich weiß es überhaupt nicht. Das Verständnis dauert ca. 5 Tage.

Schließlich

Es wurde ein verdammter Artikel. Ich werde mehr schreiben, wenn ich detaillierter werde. .. ..

Recommended Posts

Ich wollte es so machen, als würde ich einen Testfall für AtCoder ausführen.
Ich wollte so etwas wie Elixirs Pipe in Python machen
[Maschinelles Lernen] Ich habe versucht, so etwas wie Bilder weiterzugeben
[Python] Was ich getan habe, um Unit Test zu machen
Ich möchte so etwas wie Uniq in Python sortieren
Ich wollte ein Array mit der Subs-Methode von Sympy berechnen
[Django] Ich wollte testen, wenn ich eine große Datei poste [TDD]
Ich möchte die Effizienz mit Python auch in einem experimentellen System verbessern. (3) Ich möchte mit Pandas so etwas wie Excel machen
Hash-Kette wollte ich vermeiden (2)
Ich wollte cGAN zu ACGAN weiterentwickeln
Ich möchte ○○ mit Pandas machen
Hash-Kette wollte ich vermeiden (1)
Ich wollte einen Satz wie "Fucking Rashomon" (vergangene Form) generieren
Ich möchte es mit Python Lambda Django machen, aber ich werde aufhören
Ich habe eine KI gemacht, um zu beurteilen, ob es Alkohol ist oder nicht!
Ich habe PySide2 installiert, aber pyside2-uic hat nicht funktioniert, also habe ich es geschafft.
Es ist neuer, aber ich wollte die BMI-Berechnung mit Python ausprobieren.