最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python學(xué)習(xí)筆記(二)基礎(chǔ)語(yǔ)法

 更新時(shí)間:2014年06月06日 14:36:58   作者:  
對(duì)于任何一門語(yǔ)言的學(xué)習(xí),學(xué)語(yǔ)法是最枯燥無(wú)味的,但又不得不學(xué),基礎(chǔ)概念較繁瑣,本文將不多涉及概念解釋,用例子進(jìn)行相關(guān)解析,適當(dāng)與C語(yǔ)言對(duì)比,避免陷入語(yǔ)法的苦海。我認(rèn)為初學(xué)者學(xué)習(xí)語(yǔ)法的目標(biāo)是學(xué)會(huì)使用即可,關(guān)于對(duì)概念的深入理解,剖析,沒(méi)有一定的知識(shí)積累是很難做到的。

學(xué)習(xí)Python,基本語(yǔ)法不是特別難,有了C的基本知識(shí),理解比較容易。本文的主要內(nèi)容是Python基礎(chǔ)語(yǔ)法,學(xué)完后,能熟練使用就好。(開(kāi)發(fā)環(huán)境依然是Python2.7,簡(jiǎn)單使用)
一,基本知識(shí)
1,不需要預(yù)先定義數(shù)據(jù)類型(此說(shuō)法值得商榷,姑且這么說(shuō)吧),這是與其他語(yǔ)言的最大不同(如C,C++,C#,Delphi等)

復(fù)制代碼 代碼如下:

 >>> x=12
 >>> y=13
 >>> z=x+y
 >>> print z
 25

注意:盡管變量不需要預(yù)先定義,但是要使用的時(shí)候,必須賦值,否則報(bào)錯(cuò):

復(fù)制代碼 代碼如下:

 >>> le
 Traceback (most recent call last):
   File "<pyshell#8>", line 1, in <module>
     le
 NameError: name 'le' is not defined

2,查看變量的類型函數(shù)type():

復(fù)制代碼 代碼如下:

1 >>> type(x)
2 <type 'int'>

3,查看變量的內(nèi)存地址函數(shù)id():

復(fù)制代碼 代碼如下:

>>> x=12
>>> y=13
>>> z=x+y
>>> m=12
>>> print 'id(x)=',id(x)
id(x)= 30687684
>>> print 'id(m)=',id(m)
id(m)= 30687684
>>> print 'id(z)=',id(z)
id(z)= 30687528
>>> x=1.30
>>> print 'id(x)=',id(x)
id(x)= 43407128

從上述結(jié)果可以發(fā)現(xiàn):變量的指向變,地址不變,換句話說(shuō),整數(shù)12的地址值始終不變,變化的是變量的指向(如x的地址變化);
4,輸出函數(shù)print():

復(fù)制代碼 代碼如下:

 >>> x='day'
 >>> y=13.4
 >>> print x,type(x)
 day <type 'str'>
 >>> print y,type(y)
 13.4 <type 'float'>

逗號(hào)運(yùn)算符(,):可以實(shí)現(xiàn)連接字符串和數(shù)字型數(shù)據(jù)。

復(fù)制代碼 代碼如下:

 >>> print 'x=',12
 x= 12

格式化控制符:%f浮點(diǎn)數(shù);%s字符串;%d雙精度浮點(diǎn)數(shù)(這和C的輸出是一致的)。

復(fù)制代碼 代碼如下:

 >>> x=12
 >>> y=13.0004
 >>> z='Python'
 >>> print "output %d %f %s"%(x,y,s)
 output 12 13.000400 Python

5,輸入函數(shù)raw_input():

復(fù)制代碼 代碼如下:

 >>> raw_input("input an int:")
 input an int:12
 '12'

注意:raw_input()輸入的均是字符型。
6,查看幫助函數(shù)help():

復(fù)制代碼 代碼如下:

>>> help(id)
Help on built-in function id in module __builtin__:

id(...)
    id(object) -> integer

    Return the identity of an object. This is guaranteed to be unique among
    simultaneously existing objects. (Hint: it's the object's memory address.)

注意:Python的注釋,#:僅支持單行注釋;另外,Python編程具有嚴(yán)格的縮進(jìn)格式。

二、函數(shù)
1,函數(shù)定義及其調(diào)用:

復(fù)制代碼 代碼如下:

#define function:add (函數(shù)說(shuō)明)
def add(x,y):  #函數(shù)頭部,注意冒號(hào),形參x,y
    z=x+y           #函數(shù)體
    return z        #返回值
#define main function
def main():
    a=12
    b=13
    c=add(a,b)   #函數(shù)調(diào)用,實(shí)參a,b
    print c
main()             #無(wú)參函數(shù)調(diào)用
print 'End1!'

注意:這部分與C的存在的異同在于:
1,形參與實(shí)參的用法,無(wú)參函數(shù),有參函數(shù),默認(rèn)參數(shù)等規(guī)則一致。
如def add(x,y=2),調(diào)用可以是add(3)也可以是add(3,4),add(y=34,x)
2,C的形參需要指定數(shù)據(jù)類型,而Python不需要。
3,Python的返回值允許有多個(gè)。如:

復(fù)制代碼 代碼如下:

def test(n1,n2):
    print n1,
    print n2
    n=n1+n2
    m=n1*n2
    p=n1-n2
    e=n1**n2
    return n,m,p,e
print 'Entry programme1'
sum,multi,plus,powl=test(2,10)   #這個(gè)是C語(yǔ)言所沒(méi)有的賦值方式
print 'sum=',sum
print 'multi=',multi
print 'plus=',plus
print 'powl=',powl
re=test(2,10)
print re                                #數(shù)據(jù)類型為:'tuple'
print re[0],re[1],re[2],re[3]
print 'End1!\n'

運(yùn)行結(jié)果:

復(fù)制代碼 代碼如下:

Entry programme
2 10
sum= 12
multi= 20
plus= -8
powl= 1024
2 10
(12, 20, -8, 1024)
12 20 -8 1024
End!

2,局部變量:

復(fù)制代碼 代碼如下:

def f1():
    x=12     #局部變量
    print x
def f2():
    y=13      #局部變量
    print y
def f3():
    print x       #錯(cuò)誤:沒(méi)有定義變量x,這與“不需要預(yù)先定義數(shù)據(jù)類型”不矛盾
    print y
def main():
    f1()
    f2()
    #f3()#變量報(bào)錯(cuò) 
main()
print 'End2!'

3,修改全局變量的值:

復(fù)制代碼 代碼如下:

def modifyGlobal():
    global x              #全局變量定義
    print 'write x =-1'
    x=-1
def main():
# printLocalx()
# printLocaly()
# readGlobal()
    modifyGlobal()

x=200
#y=100
print 'before modified global x=',
print x
main()
print 'after modified global x=',
print x

運(yùn)行結(jié)果:

復(fù)制代碼 代碼如下:

>>>
 before modified global x= 200
 write x =-1
 after modified global x= -1

三、表達(dá)式與分支語(yǔ)句
1,表達(dá)式:
      是由數(shù)字,運(yùn)算符,數(shù)字分組符號(hào)括號(hào),自由變量和約束變量等以能求得數(shù)值的有意義排列方法所得的組合。表示通常有操作數(shù)和操作符兩部分組成。
      分類:算術(shù)表達(dá)式;關(guān)系表達(dá)式,邏輯表達(dá)式(and/or/not)
2,if分支語(yǔ)句:
1)形式一:(if <condition>:)

復(fù)制代碼 代碼如下:

 >>> sex="male"
 >>> if sex=='male':
  print 'Man!'
 #此處有兩次回車鍵
 Man!
 >>>

2)形式二:(if <condition>: else (if <condition>:))

復(fù)制代碼 代碼如下:

 sex=raw_input('Please input your sex:')
 if sex=='m' or sex=='male':
  print 'Man!'
 else:
     print 'Woman!'

運(yùn)行結(jié)果:

復(fù)制代碼 代碼如下:

 >>>
 Please input your sex:male
 Man!

3)形式三:(if <condition>: elif <condition>: else ))(這是Python有而C沒(méi)有的形式)

復(fù)制代碼 代碼如下:

count=int(raw_input('Please input your score:'))
if count>=90:
   print'優(yōu)秀!'
elif count>=80:
    print '優(yōu)良!'
elif count>=70:
    print '合格!'
elif count>=60:
    print '及格!'
else:
    print '不及格!'

運(yùn)行結(jié)果:

復(fù)制代碼 代碼如下:

 >>>
 Please input your score:90
 優(yōu)秀!

注意:Python沒(méi)有switch語(yǔ)句。

四、循環(huán)語(yǔ)句:
       背景:在程序設(shè)計(jì)的時(shí)候,經(jīng)常會(huì)遇到一些語(yǔ)句被不斷的重復(fù)執(zhí)行,這樣的代碼極長(zhǎng)又低效,很不直觀,那么應(yīng)該考慮用循環(huán)體來(lái)實(shí)現(xiàn)。
 1,while語(yǔ)句:與C在表達(dá)上有區(qū)別,c有while與do……while形式;Python下:while與while……else……形式
 1)while形式下:

復(fù)制代碼 代碼如下:

 i=1
 while i<5:
     print 'Welcome you!'
     i=i+1

2)while……else……形式下:

復(fù)制代碼 代碼如下:

 i=1
 while i<5:
     print 'Welcome you!'
     i=i+1
 else:
     print "While over!"  #循環(huán)正常結(jié)束

注意:如果while非正常狀態(tài)結(jié)束(即不按循環(huán)條件結(jié)束),則else語(yǔ)句不執(zhí)行。如下:

復(fù)制代碼 代碼如下:

i=1
while i<5:
    print 'Welcome you!'
    i=i+1
    if i==2:
        print 'While……'
        break
else:
    print "While over!"

運(yùn)行結(jié)果:

復(fù)制代碼 代碼如下:

1 >>>
2 Welcome you!
3 While……

補(bǔ)充:
continue語(yǔ)句:在while循環(huán)體中出現(xiàn)時(shí),本次循環(huán)continue之下的語(yǔ)句不被執(zhí)行,直接進(jìn)入下一次循環(huán)。

復(fù)制代碼 代碼如下:

i=1
while i<=5:
    if i==2 or i==4:
        print 'While……continue'
        i=i+1
        continue
    print 'Welcome you!'
    i=i+1
else:
    print "While over!"

運(yùn)行結(jié)果:

復(fù)制代碼 代碼如下:

>>>
Welcome you!
While……continue
Welcome you!
While……continue
Welcome you!
While over!

五,小結(jié):

      本文介紹了Python的變量,輸入輸出函數(shù),表達(dá)式,基本語(yǔ)句(分支和循環(huán))等知識(shí)的相關(guān)使用,通過(guò)練習(xí),應(yīng)該對(duì)Python有一個(gè)初步的認(rèn)識(shí)。

相關(guān)文章

  • 使用Tastypie登錄Django的問(wèn)題解決

    使用Tastypie登錄Django的問(wèn)題解決

    使用Tastypie登錄Django時(shí),可能會(huì)遇到“error_message”: “column username is not unique”錯(cuò)誤,下面就來(lái)介紹一下解決一下,感興趣的可以了解一下
    2025-04-04
  • 解決pycharm無(wú)法調(diào)用pip安裝的包問(wèn)題

    解決pycharm無(wú)法調(diào)用pip安裝的包問(wèn)題

    今天小編就為大家分享一篇解決pycharm無(wú)法調(diào)用pip安裝的包問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • python如何利用Mitmproxy抓包

    python如何利用Mitmproxy抓包

    這篇文章主要介紹了python如何利用Mitmproxy抓包,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-10-10
  • python操作mongodb根據(jù)_id查詢數(shù)據(jù)的實(shí)現(xiàn)方法

    python操作mongodb根據(jù)_id查詢數(shù)據(jù)的實(shí)現(xiàn)方法

    這篇文章主要介紹了python操作mongodb根據(jù)_id查詢數(shù)據(jù)的實(shí)現(xiàn)方法,實(shí)例分析了Python根據(jù)pymongo不同版本操作ObjectId的技巧,需要的朋友可以參考下
    2015-05-05
  • PyTorch使用教程之Tensor包詳解

    PyTorch使用教程之Tensor包詳解

    這篇文章介紹了PyTorch中的張量(Tensor)數(shù)據(jù)結(jié)構(gòu),包括張量的數(shù)據(jù)類型、初始化、常用操作、屬性等,張量是PyTorch框架中的核心數(shù)據(jù)結(jié)構(gòu),支持多種數(shù)據(jù)類型,可以通過(guò)工廠函數(shù)構(gòu)造張量,并提供了豐富的操作和屬性,感興趣的朋友跟隨小編一起看看吧
    2025-01-01
  • 使用 Python 遍歷目錄樹(shù)的方法

    使用 Python 遍歷目錄樹(shù)的方法

    這篇文章主要介紹了使用 Python 遍歷目錄樹(shù)的方法,文中給大家提到了Python os.walk() 函數(shù)的相關(guān)知識(shí),通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2020-02-02
  • Python如何利用正則表達(dá)式爬取網(wǎng)頁(yè)信息及圖片

    Python如何利用正則表達(dá)式爬取網(wǎng)頁(yè)信息及圖片

    這篇文章主要給大家介紹了關(guān)于Python如何利用正則表達(dá)式爬取網(wǎng)頁(yè)信息及圖片的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • 淺談盤點(diǎn)5種基于Python生成的個(gè)性化語(yǔ)音方法

    淺談盤點(diǎn)5種基于Python生成的個(gè)性化語(yǔ)音方法

    這篇文章主要介紹了淺談盤點(diǎn)5種基于Python生成的個(gè)性化語(yǔ)音方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • python類的實(shí)例化問(wèn)題解決

    python類的實(shí)例化問(wèn)題解決

    這篇文章主要介紹了python類的實(shí)例化問(wèn)題解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-08-08
  • python使用IPython調(diào)試debug程序

    python使用IPython調(diào)試debug程序

    這篇文章主要為大家介紹了python使用IPython調(diào)試debug程序詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05

最新評(píng)論

正阳县| 迁西县| 都安| 芒康县| 西乌珠穆沁旗| 建德市| 温泉县| 满城县| 政和县| 万宁市| 湛江市| 焦作市| 岳西县| 镇平县| 嵊泗县| 邵阳县| 邹城市| 会泽县| 沾化县| 义乌市| 麦盖提县| 巩留县| 南京市| 宽城| 翁源县| 梁平县| 霍山县| 蒙自县| 天津市| 诏安县| 泽州县| 广水市| 繁昌县| 宝丰县| 攀枝花市| 昔阳县| 岗巴县| 廊坊市| 朝阳县| 海宁市| 建瓯市|