Saya ingin mengatur file python tunggal yang berisi variabel yang memiliki lokasi semua sumber data saya. Ini kemudian akan digunakan oleh semua skrip saya yang lain, kemudian sebagai sumber data berubah, saya hanya perlu mengedit satu file.
Data_sources.py saya akan terlihat seperti ini:
BC_BEC = "Database Connections\\BC.sde\\FOREST_BC.BC_Eco\\BC.BC_BEC"
BC_TFL = "Database Connections\\Forest_BC.sde\\BC.BC_Admin\\BC.TFL_Boundary"
dan seterusnya...
Bagaimana cara mendapatkan semua skrip saya yang lain untuk memuat atau mengakses variabel-variabel ini di Data_sources.py?
Jawaban:
Anda bisa membuat modul Python yang diinstal yang dapat diimpor dari setiap skrip Python yang Anda jalankan dengan menggunakan Distutils untuk mengemasnya.
Dari dokumen Python:
Anda kemudian dapat menginstalnya melalui
Dan kemudian Anda dapat mengimpor foo dari skrip Python, atau Anda dapat menggunakan
Untuk membuat installer windows untuk modul sehingga Anda dapat mendistribusikannya ke komputer lain.
sumber
setup.py develop
(bukaninstall
), pengeditan paket akan diambil segera setelah disimpan, tanpa perlu menginstal ulang. (Ini mungkin cocok untuk data_sources.py penanya asli).Dalam skrip apa pun di direktori yang sama dengan Data_sources.py, masukkan
di atas. Ini berfungsi karena direktori yang berfungsi selalu berada di ujung jalur python kecuali Anda telah memodifikasinya.
Lihat juga: http://diveintopython.org/getting_to_know_python/everything_is_an_object.html#d0e4550
Jika Anda ingin berbagi data lebih luas, Anda dapat mengemasnya seperti yang disarankan orang lain.
sumber
Buat file konfigurasi teks dan bacalah dengan Python ConfigParser .
Contoh yang sedikit lebih baik daripada dokumentasi resmi di http://effbot.org/librarybook/configparser.htm
sumber