Gambaran Keseluruhan Ringkas
1. Pengekodan
Jika tiada keadaan istimewa, semua fail akan menggunakan pengekodan UTF-8
2, format kod
2.1, mengecut
2.2, lebar
setiap setiap Baris kod hendaklah cuba untuk tidak melebihi 80 aksara (ia boleh melebihi sedikit 80 dalam kes khas, tetapi panjang maksimum tidak boleh melebihi 120)Sebab:2.3, tanda petikan
semula jadi menggunakan tanda petikan berganda, dan penandaan mesin menggunakan tanda petikan tunggal, jadi dalam kod Kebanyakan harus menggunakan petikan tunggal
2.4. Garis kosong
class A: def __init__(self): pass def hello(self): pass def main(): pass
2.5, pengekodan
Tambahkan logo #-*-conding:utf-8-*- pada pengepala fail
3. Pernyataan import
Pernyataan import hendaklah ditulis dalam baris yang berasingan# 正确的写法 import os import sys # 不推荐的写法 import sys,os # 正确的写法 from subprocess import Popen, PIPE import语句应该使用 absolute import # 正确的写法 from foo.bar import Bar # 不推荐的写法 from ..bar import Bar
penyataan import hendaklah disusun mengikut tertib, dengan baris kosong yang memisahkan setiap kumpulan
import os import sys import msgpack import zmq import foo
from myclass import MyClassa
import bar import foo.bar bar.Bar() foo.bar.Bar()
# 正确的写法 i = i + 1 submitted += 1 x = x * 2 - 1 hypot2 = x * x + y * y c = (a + b) * (a - b) # 不推荐的写法 i=i+1 submitted +=1 x = x*2 - 1 hypot2 = x*x + y*y c = (a+b) * (a-b)🎜🎜Dalam senarai parameter fungsi, mesti ada ruang selepas 🎜
# 正确的写法 def complex(real, imag): pass # 不推荐的写法 def complex(real,imag): pass
Dalam senarai parameter fungsi, jangan tambah ruang pada kedua-dua belah tanda sama nilai lalai
# 正确的写法 def complex(real, imag=0.0): pass # 不推荐的写法 def complex(real, imag = 0.0): pass
Selepas kurungan kiri, jangan tambah ruang tambahan sebelum kurungan kanan
# 正确的写法 spam(ham[1], {eggs: 2}) # 不推荐的写法 spam( ham[1], { eggs : 2 } )
# 正确的写法 dict['key'] = list[index] # 不推荐的写法 dict ['key'] = list [index]e
# 正确的写法 x = 1 y = 2 long_variable = 3 # 不推荐的写法 x = 1 y = 2 long_variable = 3e
5. dalam kurungan. Terdapat dua keadaan pada masa ini. 1. Baris kedua diindenkan pada permulaan kurungan
foo = long_function_name(var_one, var_two, var_three, var_four)
2. Baris kedua diindenkan dengan 4 ruang, yang sesuai untuk situasi di mana kurungan permulaan ialah baris baharu
def long_function_name( var_one, var_two, var_three, var_four): print(var_one)
Gunakan garisan garisan belakang untuk baris baharu, operasi binari Simbol + ., dsb. hendaklah muncul di hujung baris; rentetan panjang juga boleh dibalut baris menggunakan kaedah ini
session.query(MyTable).\ filter_by(id=1).\ one() print 'Hello, '\ '%s %s!' %\ ('Harry', 'Potter')
Pernyataan kompaun adalah dilarang, iaitu, berbilang pernyataan disertakan dalam satu baris:
# 正确的写法 do_first() do_second() do_third() # 不推荐的写法 do_first();do_second();do_third();
jika/untuk/sementara mesti dibalut baris:
# 正确的写法 if foo == 'blah': do_blah_thing() # 不推荐的写法 if foo == 'blah': do_blash_thing()6 , docstring
Dua perkara paling asas dalam spesifikasi docstring ialah: 1 Semua modul, fungsi, kelas dan kaedah awam hendaklah ditulis docstring. Kaedah persendirian tidak semestinya diperlukan, tetapi harus disediakan dengan komen blok selepas def.
2. Hujung """ docstring harus menduduki barisnya sendiri, melainkan docstring ini hanya mempunyai satu baris.
"""Return a foobar Optional plotz says to frobnicate the bizbaz first. """ """Oneline docstring"""bahagian seterusnya