從零開始學(xué)Python(三):代碼格式和基本語法詳解

上一章我們的helloWord程序利用了python的交互性,沒有創(chuàng)建任何文件,直接利用了python的解釋性在命令行輸出了helloword.這種編寫方式不利于調(diào)試,也不方便修改,這章開始我們采用腳本式編程,創(chuàng)建一個test.py文件進行代碼的編寫,然后利用命令行運行.這樣更直觀一點.

學(xué)習本章前,我們先隨便在磁盤創(chuàng)建一個目錄,在里面創(chuàng)建一個test.py的空文件然后我們在命令行進入到這個目錄

接下來我們就開始學(xué)習語法了!

Python代碼標識符

python中標識符都是以字母,下劃線開頭的字符.但數(shù)字不能作為開頭.
一般python中的標識符都包含特殊的含義:比如以雙下劃線開頭的__foo 表示私有成員,單下劃線的_foo

Python關(guān)鍵字(保留字符)

python中保留字符都是以小寫字母打頭的,這些保留字符不能用作變量名,常數(shù)或者變數(shù)等其他用途.一下是部分保留字符的概覽表:

and exec not
assert finally or
break for pass
class class class
continue global raise
def if return
del import try
elif in while
else is with
except lambda yield

Python代碼規(guī)范

1.縮進

和其他語言不同,Python語言中每條語句后都沒有分號作為結(jié)束標志.進而衍生出了特殊的縮進形式,在Python中,代碼的縮進對其是非常重要的!一般你的代碼縮進有問題,運行就會存在問題.假如你使用的是一些可視化編譯器,編譯器也會立刻的反饋你的所在行數(shù)的代碼有問題.
下面是個例子:(注意,打印中文時可能)

#coding=utf-8   //這個代碼是防止輸出中文亂碼,指定編譯器以utf-8編碼運行
print '測試python'
 print '你好,python'    #這一行的代碼沒有頂格,

我們打開命令,cd到我們新建的test.py文件的目錄,執(zhí)行以下這代碼:

#coding=utf-8 
zhangxiaoming$ python test.py 
File "test.py", line 4
print '你好'
^
IndentationError: unexpected indent

會發(fā)現(xiàn)出現(xiàn)unexpected indent的錯誤,也就是縮進錯誤.這是和其他語言很不同的地方,python代碼都是從左到右檢查的,一個完整的語句都是頂格開始的,除非語句中還有其他的邏輯(比如循環(huán)語句,后面我們會講到),這時里面的邏輯代碼便要相對于外部代碼縮進四個空格(也就是一個TAB鍵空格,我們以后最好使用TAB鍵進行縮進,因為指不定你就空格數(shù)著數(shù)著就亂了).

這里舉個循環(huán)語句縮進的例子:

i=1
while i<5:
    print str(i)

你可能會說:這代碼我看不懂啊! 沒事,我們這里只看縮進,當圖片看就好了,上面的循環(huán)中有內(nèi)部邏輯(也就是print str(i)),所以內(nèi)部邏輯代碼相比于上一條語句縮進了一個TAB空格.反正就是一句話,需要縮進的地方,用TAB鍵縮進!

2.注釋

python中的注釋主要分兩種:

2.1單行注釋

單行注釋用#號:

i=1  #注釋也可防御代碼未
# while i<5:
#   print str(i) 
#這是一個注釋

上面我們利用#號將代碼注釋掉了

2.2多行注釋

多行注釋有兩種形式:一種是三個單引號開頭,三個單引號結(jié)尾.一種是以三個雙引號開頭,三個雙引號結(jié)尾

'''
這是多行注釋
這是多行注釋
'''

"""
這也是多行注釋
這也是多行注釋
"""

3.多行語句

python中一般以行作為代碼結(jié)束標志,編譯器檢查完一行之后會繼續(xù)檢查下一行代碼,但有時我們也需要一行一句跨多行,這是就要用到多行語句了,如下圖

total = item_one + \
        item_two + \
        item_three

我們可以使用斜杠( \)將一行的語句分為多行顯示

但是如果語句中包含 [], {} 或 () 括號就不需要使用多行連接符严沥。 如下實例:

days = ['Monday', 'Tuesday', 'Wednesday',
        'Thursday', 'Friday']

4.引號表字符串

python語言中,字符串一般都是用引號括起來表示的,一般有三種表示形式,雙單引號,雙雙引號,雙三引號.其中雙三引號也可以實現(xiàn)字符串的多行跨越,如下:

word = 'word'
sentence = "這是一個句子菩鲜。"
paragraph = """這是一個段落衩匣。
包含了多個語句"""

5.同一行中有多條語句

雖然python中一條語句一般是單獨占一行,但是如果你要在一行中寫多條語句也是可以的,需要用;號隔開:

import sys; x = 'runoob'; sys.stdout.write(x + '\n')

6.輸出語句

輸出語句使我們學(xué)習編程中用的最多的語句之一了,很多時候我們都可以通過輸出語句來直觀的打印出我們程序中各種結(jié)果,也可以用來了解那里程序bug了,python中的輸出語句有點和c的類似,用print關(guān)鍵字:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

x="a"
y="b"
# 換行輸出
print x
print y

print '---------'
# 不換行輸出
print x,
print y,

# 不換行輸出
print x,y

上面代碼的輸出結(jié)果:

a
b
------
a b a b

7.代碼組(代碼塊)

縮進相同的一組語句構(gòu)成一個代碼塊烟勋,我們稱之代碼組勘高。
像if帘饶、while棍鳖、def和class這樣的復(fù)合語句汁针,首行以關(guān)鍵字開始干签,以冒號( : )結(jié)束津辩,該行之后的一行或多行代碼構(gòu)成代碼組。
我們將首行及后面的代碼組稱為一個子句(clause)容劳。
如下示例:

if expression : 
    suite 
elif expression :  
    suite  
else :  
    suite

Q&A

以上就是本編的全部內(nèi)容,下一章節(jié),博主將帶領(lǐng)你了解一下python變量于數(shù)據(jù)類型

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末喘沿,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子竭贩,更是在濱河造成了極大的恐慌蚜印,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,561評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件娶视,死亡現(xiàn)場離奇詭異晒哄,居然都是意外死亡睁宰,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,218評論 3 385
  • 文/潘曉璐 我一進店門寝凌,熙熙樓的掌柜王于貴愁眉苦臉地迎上來柒傻,“玉大人,你說我怎么就攤上這事较木『旆” “怎么了?”我有些...
    開封第一講書人閱讀 157,162評論 0 348
  • 文/不壞的土叔 我叫張陵伐债,是天一觀的道長预侯。 經(jīng)常有香客問我,道長峰锁,這世上最難降的妖魔是什么萎馅? 我笑而不...
    開封第一講書人閱讀 56,470評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮虹蒋,結(jié)果婚禮上糜芳,老公的妹妹穿的比我還像新娘。我一直安慰自己魄衅,他們只是感情好峭竣,可當我...
    茶點故事閱讀 65,550評論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著晃虫,像睡著了一般皆撩。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上哲银,一...
    開封第一講書人閱讀 49,806評論 1 290
  • 那天扛吞,我揣著相機與錄音,去河邊找鬼盘榨。 笑死喻粹,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的草巡。 我是一名探鬼主播,決...
    沈念sama閱讀 38,951評論 3 407
  • 文/蒼蘭香墨 我猛地睜開眼型酥,長吁一口氣:“原來是場噩夢啊……” “哼山憨!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起弥喉,我...
    開封第一講書人閱讀 37,712評論 0 266
  • 序言:老撾萬榮一對情侶失蹤郁竟,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后由境,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體棚亩,經(jīng)...
    沈念sama閱讀 44,166評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡蓖议,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,510評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了讥蟆。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片勒虾。...
    茶點故事閱讀 38,643評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖瘸彤,靈堂內(nèi)的尸體忽然破棺而出修然,到底是詐尸還是另有隱情,我是刑警寧澤质况,帶...
    沈念sama閱讀 34,306評論 4 330
  • 正文 年R本政府宣布愕宋,位于F島的核電站,受9級特大地震影響结榄,放射性物質(zhì)發(fā)生泄漏中贝。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,930評論 3 313
  • 文/蒙蒙 一臼朗、第九天 我趴在偏房一處隱蔽的房頂上張望雄妥。 院中可真熱鬧,春花似錦依溯、人聲如沸老厌。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,745評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽枝秤。三九已至,卻和暖如春慷嗜,著一層夾襖步出監(jiān)牢的瞬間淀弹,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,983評論 1 266
  • 我被黑心中介騙來泰國打工庆械, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留薇溃,地道東北人。 一個月前我還...
    沈念sama閱讀 46,351評論 2 360
  • 正文 我出身青樓缭乘,卻偏偏與公主長得像沐序,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子堕绩,可洞房花燭夜當晚...
    茶點故事閱讀 43,509評論 2 348

推薦閱讀更多精彩內(nèi)容

  • http://python.jobbole.com/85231/ 關(guān)于專業(yè)技能寫完項目接著寫寫一名3年工作經(jīng)驗的J...
    燕京博士閱讀 7,557評論 1 118
  • 第2章 基本語法 2.1 概述 基本句法和變量 語句 JavaScript程序的執(zhí)行單位為行(line)策幼,也就是一...
    悟名先生閱讀 4,131評論 0 13
  • 六九冰開 七九燕來 你是立春之后 一樹一樹的花開 這么久了 這么忍了 這么簡單的夢里 你不容分說地還在 ——馮唐【還在】
    小王子的狐貍先森閱讀 358評論 0 0
  • 猜猜這一碗是什么嗎? 有黃瓜奴紧、圣女果特姐、蘋果、菠蘿黍氮,還有其它的唐含。這樣拌起來蠻好吃浅浮。猜猜這什么呢?
    朱同萍閱讀 281評論 0 0