2016-10-24 4 views
1
import os 

    def rename_file(): 

    #function definition 

    file_name = os.listdir(r"C:\pyscripts\prank") 
    path = os.getcwd() 
    print(path) 

    rename_file() # function calling 

* Wie funktioniert das Verzeichnis wie gedruckt wird 'C: \ pyscripts' statt C: \ pyscripts \ Streich *Warum wird das Verzeichnis in diesem Code geändert

+0

Bitte beachten Sie, dass Super User für allgemeine Computer Hardware und Software ist. Weitere Informationen finden Sie in der [Hilfe/zum Thema]. Programmierfragen sollten am [so] gestellt werden. –

+5

'os.getcwd()' gibt das aktuelle Arbeitsverzeichnis des Prozesses zurück, also gehe ich davon aus, dass Sie das Skript einfach von 'C: \ pyscripts' aus ausgeführt haben. Warum würdest du erwarten, dass es 'C: \ pyscripts \ strank' ist? – techie007

+1

Es ist nicht klar, warum Sie erwarten, dass sich das Verzeichnis überhaupt ändert. 'os.listdir' ändert das Arbeitsverzeichnis nicht - es gibt nur eine Liste von Dateien in dem Verzeichnis zurück, das Sie übergeben. Wenn Sie das Arbeitsverzeichnis ändern wollen, benutzen Sie 'os.chdir'. Um zu sehen, was diese Funktionen tatsächlich tun, lesen Sie bitte [die Dokumentation] (https://docs.python.org/2/library/os.html#os-file-dir). –

Antwort

2

getcwd() Funktion gibt den aktuellen Arbeitsverzeichnis für das Python-Skript, wie pwd Befehl (Unix). Also, wenn Sie das Arbeitsverzeichnis müssen C:\pyscripts\prank sein, dann sollten Sie tun:

os.chdir("C:\pyscripts\prank") 

Dies ist auf den cd Befehl ähnlich funktioniert.

+0

thnks für Ihre Hilfe. – Borris

Verwandte Themen