Unten ist der Code. Wenn ich es in PyCharm (Mein Editor) starte, funktioniert alles gut, aber wenn ich das Python-Skript in meinem Terminal ausführe und dann die Nummer eintippe, passiert nichts außer "Fertig !!" Drucke. Ja, ich führe das Skript mit sudo
.os.system() funktioniert nicht [Ubuntu 16.04], [Python 3.5.2]
# -*- coding: utf-8 -*-
#!usr/bin/python
import os
import time
print('==========================')
print('==========================')
print('1. Update System')
print('2. Check IP-Address')
print('3. Train')
print('==========================')
print('==========================')
Nummer = input('What do you want to do?: ')
def nummer1():
if Nummer == '1':
print('System-Update is starting...')
time.sleep(2)
os.system("gnome-terminal -e 'sudo apt-get update'")
nummer1()
def nummer2():
if Nummer == '2':
print('Checking IP-Address...')
time.sleep(2)
os.system("gnome-terminal -e 'sudo ifconfig'")
nummer2()
def nummer3():
if Nummer == '3':
os.system("gnome-terminal -e 'sudo apt-get install sl && sl'")
time.sleep(1)
print('Get ready...')
time.sleep(2)
nummer3()
print('Finished!!')
Meine Vermutung, Sie laufen mit Python 2 vom Terminal und 'input()' wird zu einer Ganzzahl ausgewertet, so dass Ihre 'if' Anweisungen fehlschlagen –
Wo kann ich das sehen und wie kann ich das ändern? – kolololol
Konvertieren Sie die Eingabe explizit in "str" oder "int" und vergleichen Sie sie entsprechend. –