Python Cheat Sheet

Bagian kode Python yang sering diperlukan

Konten Halaman

Terkadang membutuhkan ini tetapi tidak bisa menemukannya langsung.
Jadi menyimpannya semua di sini.

Mereka bukan sesuatu yang baru,
hanya sekumpulan salinan-paste,
tapi mereka bekerja untuk saya,
dan saya harap Anda juga mungkin menemukannya berguna.

Awesome Python in 3d

Perintah Umum Anaconda

Periksa apakah Conda terinstal

conda -V

Periksa apakah Conda sudah diperbarui

conda update conda

Buat lingkungan virtual

conda create -n newenvname python=3.12 anaconda

Aktifkan lingkungan virtual Anda

source activate newenvname

Pasang paket Python tambahan ke lingkungan virtual

conda install -n newenvname [package]

Nonaktifkan lingkungan virtual Anda

source deactivate

Hapus lingkungan virtual

conda remove -n newenvname --all

Ketergantungan Program

Menginstal ketergantungan - Menggunakan file requirements

Alih-alih menginstal paket secara individual, pip memungkinkan Anda untuk menyatakan semua ketergantungan dalam sebuah File Requirements. Misalnya, Anda bisa membuat file requirements.txt yang berisi:

requests==2.18.4
google-auth==1.1.0

Dan beri tahu pip untuk menginstal semua paket dalam file ini menggunakan flag -r:

python3 -m pip install -r requirements.txt

Memembekukan ketergantungan

Pip dapat mengekspor daftar semua paket yang terinstal beserta versinya menggunakan perintah freeze:

python3 -m pip freeze

akan menghasilkan sesuatu seperti

requests==2.18.4
google-auth==1.1.0

Perintah pip freeze berguna untuk membuat File Requirements yang dapat merekayasa ulang versi eksak dari semua paket yang terinstal dalam sebuah lingkungan.

Menggambar persegi panjang

import cv2

cv2.rectangle(img, (x1, y1), (x2, y2), color=(255,0,0), thickness=2)

x1,y1 ------
|          |
|          |
|          |
--------x2,y2

untuk menambahkan pertanyaan lanjutan di bawah ini:

cv2.imwrite("my.png",img)

cv2.imshow("lalala", img)
k = cv2.waitKey(0) # 0==tunggu selamanya

Saya memiliki objek gambar PIL dan ingin menggambar persegi panjang pada gambar ini. Saya ingin menggunakan opencv2 dan menggambar persegi panjang, lalu mengubahnya kembali ke objek gambar PIL. Berikut cara saya melakukannya:

# im adalah objek gambar PIL
im_arr = np.asarray(im)
# konversi array rgb ke format bgr opencv
im_arr_bgr = cv2.cvtColor(im_arr, cv2.COLOR_RGB2BGR)
# pts1 dan pts2 adalah koordinat kiri atas dan kanan bawah persegi panjang
cv2.rectangle(im_arr_bgr, pts1, pts2,
              color=(0, 255, 0), thickness=3)
im_arr = cv2.cvtColor(im_arr_bgr, cv2.COLOR_BGR2RGB)
# konversi kembali ke objek gambar
im = Image.fromarray(im_arr)

Parsing argumen yang mudah

import json

#---------------------------------------------------------------------------
def do_some_awesomeness(src_file, tgt_file):
    print('Mengkonversi beberapa hal dari {} ke {}'.format(src_file, tgt_file))

#---------------------------------------------------------------------------
def run():
    import argparse

    parser = argparse.ArgumentParser(description="Beberapa alat python yang sangat berguna dan efisien.")
    parser.add_argument("-s", "--src", dest="src_file",
        help="nama file json input")
    parser.add_argument("-t", "--tgt", dest="tgt_file",
        help="nama file json output")
    
    args = parser.parse_args()

    do_some_awesomeness(args.src_file, args.tgt_file)

if __name__ == '__main__':
    run()

Kemudian panggil seperti ini

python ave_roma.py --src 1.json --tgt 2.json

Memuat dan menyimpan json

import json

def do_convert(src_file, tgt_file):

    with open(src_file) as f:
        src = json.load(f)

    tgt = src # :)

    with open(tgt_file, 'w', encoding='utf-8') as f:
        json.dump(tgt, f, ensure_ascii=False, indent=4)

Mendapatkan nama file tanpa ekstensi

import os

print(os.path.splitext("/path/to/some/file.txt")[0])

akan mencetak:

/path/to/some/file

Tautan berguna