Rumah >pembangunan bahagian belakang >Tutorial Python >Alat pemformatan automatik untuk bahasa Python

Alat pemformatan automatik untuk bahasa Python

WBOY
WBOYke hadapan
2023-04-13 09:16:122514semak imbas

Setiap bahasa pengaturcaraan mempunyai alat pemformatan tersendiri, seperti gofmt dalam bahasa golang, lebih cantik dalam bahasa JavaScript dan php-cs-fixer dalam bahasa php Sama seperti bahasa pengaturcaraan ini, python juga mempunyai alat pemformatan automatiknya sendiri. Tetapi perbezaannya ialah ia mempunyai banyak alat pemformatan. Seterusnya, mari kita lihat perbezaan antara alat pemformatan yang berbeza ini.

autopep8

Ini ialah alat kod pemformatan Python yang paling awal Ia menggunakan gaya pycode untuk menganalisis kod, dan kemudian membaiki kod yang tidak mematuhi gaya semangat. Pada masa yang sama, ia juga akan membetulkan beberapa kod yang tidak digunakan, menyeragamkan penghujung kod dan menambah beberapa pemisah baris kosong untuk beberapa kaedah dan fungsi.

autopep8 menyokong pengisytiharan pemformatan melalui fail konfigurasi, ia menyokongnya. Fail konfigurasi dalam cfg, .ini .pep8 .flake8 dan format lain. Pada masa ini dia mempunyai lebih daripada 4200 suka di github.

yapf

Ini ialah alat pemformatan yang dilancarkan oleh Google Kerana ia disokong oleh pengeluar utama, ia telah berkembang pesat dan pada masa ini mempunyai 13,000 suka di github. Ia tidak menyemak garis panduan semangat, ia hanya memformat kod. Ia menggunakan idea yang serupa dengan ​​clang-format​​, iaitu membaca keseluruhan kod fail dan kemudian memformatkannya ke dalam format terbaik.

Ia ialah penyelesaian format kod yang berbeza akan membawa kepada hasil pemformatan yang berbeza Konfigurasi arus perdana termasuk pep8, google, facebook, kromium, dll. Selain itu, ia juga menyokong skema konfigurasi tersuai, dan gaya format boleh ditentukan melalui ​​--style​​.

x = {'a':37,'b':42,

'c':927}

y = 'hello ''world'
z = 'hello '+'world'
a = 'hello {}'.format('world')
class foo( object):
def f(self ):
return 37*-+2
def g(self, x,y=42):
return y
def f( a )
return37+-+a[42-x :y**3]

Selepas diformatkan ​yapf​​, kod yang tidak kemas di atas akan menjadi sangat biasa dan lebih mudah dibaca.

x = {'a': 37, 'b': 42, 'c': 927}

y = 'hello ' 'world'
z = 'hello ' + 'world'
a = 'hello {}'.format('world')

class foo(object):
def f(self):
return 37 * -+2

def g(self, x, y=42):
return y

def f(a):
return 37 + -+a[42 - x:y**3]

hitam

hitam ialah alat pemformatan kod ular sawa yang baru dilancarkan dalam beberapa tahun kebelakangan ini, walaupun ia adalah yang paling popular pada masa ini daripada 30,000.

Alat pemformatan automatik untuk bahasa Python

hitam dikenali sebagai alat pemformatan kod tanpa kompromi. Dalam erti kata lain, ia tidak membenarkan atau memerlukan anda melaraskan butiran format kod secara manual secara lalai.

Alat pemformatan automatik untuk bahasa Python

Ia mempunyai kelajuan yang sangat cekap dan digunakan oleh banyak projek.

Alat pemformatan automatik untuk bahasa Python

Hitam mempunyai suite ujian yang komprehensif dengan ujian fungsi selari yang cekap,

Berikut ialah beberapa organisasi yang menggunakan hitam: Facebook, Dropbox, KeepTruckin, Mozilla , Quora, Duolingo, QuantumBlack, Tesla, Archer Aviation.

Anda dapat melihat bahawa banyak syarikat terkenal menggunakannya untuk memformat kod python, hanya kerana ia sangat mudah digunakan dan mudah.

Ringkasan

autopep8 hampir ditinggalkan, seperti yang dapat dilihat daripada bilangan suka pada github yapf mempunyai penyelesaian pemformatan yang lebih fleksibel dan tersuai, manakala hitam Jadikan program kelihatan lebih bersatu dan elegan, dan elakkan konfigurasi yang rumit.

Alat pemformatan automatik untuk bahasa Python

Jika syarikat anda atau anda menggunakan python untuk pembangunan projek, maka adalah sangat perlu untuk memilih alat pemformatan kod, yang boleh menjimatkan banyak wang pasukan pembangunan anda. masa. Dan sama ada kod peribadi anda atau format kod orang lain akan kelihatan sama, jadi semua orang akan gembira membaca kod orang lain.

Atas ialah kandungan terperinci Alat pemformatan automatik untuk bahasa Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:51cto.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam