亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

gambaran ringkas

Gambaran Keseluruhan Ringkas

1. Pengekodan

  • Jika tiada keadaan istimewa, semua fail akan menggunakan pengekodan UTF-8

  • -sekiranya ada keadaan istimewa mesti ditambahkan pada pengepala fail: UTF-8-*-Idential

2, format kod

2.1, mengecut

  • Seragam penggunaan 4 lekukan
  • grid kosong

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:

  • Ini berguna apabila melihat sisi- perbezaan sisi

  • Senang melihat kod di bawah konsol

  • Mungkin kecacatan reka bentuk jika terlalu panjang

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

  • Bahasa semula jadi menggunakan petikan berganda "..."

;Sebagai contoh, mesej ralat dalam banyak kes ia masih unicode, gunakan u"Hello World"
  • Gunakan petikan tunggal untuk pengenalan mesin '...' Contohnya, kunci dalam dict
  • ungkapan biasa menggunakan petikan berganda asli r".. ."
  • Rentetan dokumen (docstring) menggunakan tiga petikan berganda """.... .."""

2.4. Garis kosong

  • Dua baris kosong dan antara fungsi peringkat modul definisi kelas;
  • Satu baris kosong antara fungsi ahli kelas;
    class A:
        def __init__(self):
            pass
        def hello(self):
            pass
    def main():
        pass
  • Berbilang baris kosong boleh digunakan untuk memisahkan berbilang kumpulan fungsi yang berkaitan
  • Anda boleh menggunakan baris kod kosong yang berasingan fungsi

2.5, pengekodan

  • Fail menggunakan pengekodan UTF-8
  • 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
  • Pernyataan import hendaklah diletakkan di kepala fail Selepas penerangan modul dan docstring, sebelum pembolehubah global

  • penyataan import hendaklah disusun mengikut tertib, dengan baris kosong yang memisahkan setiap kumpulan

    import os
    import sys
    import msgpack
    import zmq
    import foo
  • Boleh digunakan semasa mengimport definisi kelas modul lain Import relatif
    from myclass import MyClass
    a
  • Jika anda menamakan konflik
boleh menggunakan ruang nama

import bar
import foo.bar
bar.Bar()
foo.bar.Bar()

    4, ruang
Satu ruang pada setiap sisi pengendali binari [=,-+= ,==,>,dalam,bukan, dan]:
  • # 正確的寫法
    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 } )
  • Bahagian kiri objek kamus tidak ada ruang tambahan sebelum braket

  • # 正確的寫法
    dict['key'] = list[index]
    # 不推薦的寫法
    dict ['key'] = list [index]
    e
  • no ruang tambahan yang digunakan untuk menyelaraskan penyata tugasan

  • # 正確的寫法
    x = 1
    y = 2
    long_variable = 3
    # 不推薦的寫法
    x             = 1
    y             = 2
    long_variable = 3
    e

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"""
Meneruskan pembelajaran