Ko`rsatma va iboralarda bo`sh joylar
Quyidagi holatlarda bo`sh joy belgisini qo`llashdan saqlaning:
Bevosita dumaloq, kvadratli va figurali qavslarning ichida.
To`g`ri qo`llanilishi:
spam(ham[1], {eggs: 2})
Xato qo`llanilishi:
spam( ham[ 1 ], { eggs: 2 } )
Bevosiya vergul, nuqtali vergul yoki ikki nuqta oldida:
To`g`ri qo`llanilishi:
if x == 4: print(x, y); x, y = y, x
Xato qo`llanilishi:
if x == 4 : print(x , y) ; x , y = y , x
Funksiyalarga murojaat qilinayotganda argument yozilishikerak bo`lgan qavslarni ochishdan oldinda:
To`g`ri qo`llanilishi:
spam(1)
Xato qo`llanilishi:
spam (1)
Indeks yoki kesim yozilishi kerak bo`lgan qavsning ochilishidan oldinda:
To`g`ri qo`llanilishi:
dict['key'] = list[index]
Xato qo`llanilishi:
dict ['key'] = list [index]
O`zlashtirish (yoki boshqa ixtiyoriy) operatori atrofida boshqalari bilan tekislashmaqsadida bittadan ortiq bo`sh joy ishlatishda:
To`g`ri qo`llanilishi:
x = 1
y = 2
long_variable = 3
Xato qo`llanilishi:
x = 1
y = 2
long_variable = 3
Har doim quyidagi operatorlarning ikkala tomonidan bittadan bo`sh joy bilan qamrab oling: o`zlashtirish (=, +=, -= va boshqalar), taqqoslash (==, <, >, !=, <>, <=, >=, in, not in, is, is not) va mantiqiy (and, or, not).
Agar turli ustunlikka ega operatorlardan foydalanayotgan bo`lsangiz, eng past ustunlikka ega bo`lgan operator atrofida bo`sh joylarni qo`shishga harakat qiling. O`zingiz mustaqil fikr yuriting, lekin hech qachon 1 tadan ortiq bo`sh joyni qo`llamang hamda binar operatorlarning ikkala tomonida ham bir xil sondagi bo`sh joylarni qo`llang.
To`g`ri qo`llanilishi:
i = i + 1
submitted += 1
x = x*2 - 1
hypot2 = x*x + y*y
c = (a+b) * (a-b)
Xato qo`llanilishi:
i=i+1
submitted +=1
x = x * 2 - 1
hypot2 = x * x + y * y
c = (a + b) * (a - b)
Agar = belgisi nomlangan argument yoki parametrlarning odatiy qiymatlarini ko`rsatish uchun qo`llanilayotgan bo`lsa uning atrofida bo`sh joydan foydalanmang.
To`g`ri qo`llanilishi:
def complex(real, imag=0.0):
return magic(r=real, i=imag)
Xato qo`llanilishi:
def complex(real, imag = 0.0):
return magic(r = real, i = imag)
Tarkibiy ko`rsatmalardan foydlanmang (Bir qatorda bir nechta buyruqlardan)
To`g`ri qo`llanilishi:
if foo == 'blah':
do_blah_thing()
do_one()
do_two()
do_three()
Xato qo`llanilishi:
if foo == 'blah': do_blah_thing()
do_one(); do_two(); do_three()
Ba`zida while va for takrorlashlar tanalarini yoki if tarmog`ini, agar ular qisqa ko`rinishda bo`lsa, shu satrning o`zida ham yozish mumkin, lekin buyruqlar bir nechta bo`lsa, hech qachon bunday yozmang. Bundan tashqari juda uzun satrlardan foydalanmaslikka harakat qiling.
Xato ekanligi aniq:
if foo == 'blah': do_blah_thing()
for x in lst: total += x
while t < 10: t = delay()
Xato bo`lishi mumkin:
if foo == 'blah': do_blah_thing()
else: do_non_blah_thing()
try: something()
finally: cleanup()
do_one(); do_two(); do_three(long, argument,
list, like, this)
if foo == 'blah': one(); two(); three()
Dostları ilə paylaş: |