Saya menggunakan Python 3.2 di Windows 7. Ketika saya membuka shell Python, bagaimana saya bisa tahu apa direktori saat ini dan bagaimana saya bisa mengubahnya ke direktori lain di mana modul saya berada?
Saya menggunakan Python 3.2 di Windows 7. Ketika saya membuka shell Python, bagaimana saya bisa tahu apa direktori saat ini dan bagaimana saya bisa mengubahnya ke direktori lain di mana modul saya berada?
Jawaban:
Anda dapat menggunakan os
modul.
>>> import os
>>> os.getcwd()
'/home/user'
>>> os.chdir("/tmp/")
>>> os.getcwd()
'/tmp'
Tetapi jika ini tentang menemukan modul lain: Anda dapat mengatur variabel lingkungan bernama PYTHONPATH
, di Linux akan seperti
export PYTHONPATH=/path/to/my/library:$PYTHONPATH
Kemudian, penerjemah juga mencari import
modul ed di tempat ini . Saya kira namanya akan sama di bawah Windows, tetapi tidak tahu bagaimana cara mengubahnya.
sunting
Di bawah Windows:
set PYTHONPATH=%PYTHONPATH%;C:\My_python_lib
(diambil dari http://docs.python.org/using/windows.html )
edit 2
... dan bahkan lebih baik: gunakan virtualenv
dan virtualenv_wrapper
, ini akan memungkinkan Anda untuk membuat lingkungan pengembangan tempat Anda dapat menambahkan jalur modul sesuka Anda ( add2virtualenv
) tanpa mencemari instalasi Anda atau lingkungan kerja "normal".
http://virtualenvwrapper.readthedocs.org/en/latest/command_ref.html
PYTHONPATH
, tetapi perhatikan bahwa OP menentukan Windows ...
sys.path
dalam skrip Anda.
PYTHONPATH
secara global jika Anda memiliki lebih dari satu Python yang diinstal (atau ada program yang menginstal bundel Python dengan mereka - dengan kata lain Anda tidak akan pernah tahu): itu dapat merusak instalasi Anda dengan cara yang misterius
kamu ingin
import os
os.getcwd()
os.chdir('..')
os.chdir('C:/Users/Ajeya/Documents')
, atau os.chdir('C:\\Users\\Ajeya\\Documents')
, atau os.chdir(r'C:\Users\Ajeya\Documents')
.
os.getcwd()
hanya untuk keperluan debugging sehingga kita bisa melihat apa direktori yang berfungsi sebelum kita mengubahnya. Kode untuk benar-benar mengubah cwd
hanyaos.chdir('..')
>>> import os
>>> os.system('cd c:\mydir')
Bahkan, os.system()
dapat menjalankan perintah apa pun yang dapat dijalankan oleh perintah windows, bukan hanya mengubah dir.
Mengubah direktori saat ini bukan cara untuk berurusan dengan menemukan modul dengan Python.
Sebaliknya, lihat dokumen untuk The Module Search Path untuk bagaimana Python menemukan modul mana yang akan diimpor.
Berikut adalah bit yang relevan dari bagian Modul Standar :
Variabel sys.path adalah daftar string yang menentukan jalur pencarian penerjemah untuk modul. Ini diinisialisasi ke jalur default yang diambil dari variabel lingkungan PYTHONPATH, atau dari bawaan bawaan jika PYTHONPATH tidak diatur. Anda dapat memodifikasinya menggunakan operasi daftar standar:
>>> import sys
>>> sys.path.append('/ufs/guido/lib/python')
Untuk menjawab pertanyaan awal Anda tentang mendapatkan dan mengatur direktori saat ini:
>>> help(os.getcwd)
getcwd(...)
getcwd() -> path
Return a string representing the current working directory.
>>> help(os.chdir)
chdir(...)
chdir(path)
Change the current working directory to the specified path.
import sys sys.path.append('/home/g/PycharmProjects/your_project/')
Cara termudah untuk mengubah direktori kerja saat ini di python adalah menggunakan paket 'os'. Di bawah ini ada contoh untuk windows komputer:
# Import the os package
import os
# Confirm the current working directory
os.getcwd()
# Use '\\' while changing the directory
os.chdir("C:\\user\\foldername")
Jika Anda import os
dapat menggunakan os.getcwd
untuk mendapatkan direktori kerja saat ini, dan Anda dapat menggunakan os.chdir
untuk mengubah direktori Anda