Python入門筆記(4):基礎快餐版

來源:互聯網
上載者:User

1、print語句調用str()函數顯示,互動式解譯器調用repr()函數來顯示對象

>>> s='python'>>> s'python'         #repr(),顯示結果呈現單引號>>> print s    #str().沒有單引號python>>> repr(s)"'python'">>> str(s)'python'

 str()主要顯示給人看,repr()顯示個機器和畜生看。
print語句會預設給每一行加上分行符號,只要在print語句的最後添加一個逗號(,)就可讓結果排列在一行。

2、raw_input():

讀取標準輸入,並把結果給指定變數,如:name=raw_input('your name:')

3、一些語句

(1)、if、if .. else ..、if ..elif..else..

elif即‘else if ’,注意在Django中不存在 elif 模板標籤

(2)、while迴圈
迴圈控制,最好依賴 ..True..Flase,如下:(《DjangoBook第八章例子》)

#coding=utf-8'''Created on 2013-4-17@author: BeginMan'''db={}def newuser():    prompt='login desired:'    while True:        name=raw_input(prompt)        if db.has_key(name):            prompt='name taken,try another'            continue        else:            break    pwd=raw_input('password:')    db[name]=pwd    def olduser():    name=raw_input('name:')    pwd=raw_input('password:')    if pwd==db.get(name):        print 'welecom back ',name    else:        print 'login error'        def showmenu():    prompt="""    -----------------    (N) new user login    (E) existing user login    (Q) quit    -----------------    Enter choice:    """    done=False    while not done:        chosen=False        while not chosen:            try:                choice=raw_input(prompt).strip()[0].lower()            except(EOFError,KeyboardInterrupt):                choice='q'            print '\n you picked:[%s]' %choice            if choice not in 'neq':                print 'invalid option,try again'            else:                chosen=True        if choice=='q':done=True        if choice=='n':newuser()        if choice=='e':olduser()        if __name__=='__main__':    showmenu()

 (3)、for迴圈

不同C#、java、C、等程式設計語言,如js中:for(var i=0;i<s.length;i++){....};python中它更像C#中的foreach():

>>> dic={'name':'BeginMan','job':'pythoner','age':22}>>> for obj in dic.items():print obj('age', 22)('job', 'pythoner')('name', 'BeginMan')

 (4)、range()/len()使用

這兩個方法用的很多,如:

>>> for obj in range(5):print obj,0 1 2 3 4>>> for obj in [0,1,2,3,4]:print obj,0 1 2 3 4

 首先瞭解下range()。它很像JavaScript裡面隨機函數,在python裡也這樣稱呼。

>>> help(range)Help on built-in function range in module __builtin__:range(...)    range([start,] stop[, step]) -> list of integers        Return a list containing an arithmetic progression of integers.    range(i, j) returns [i, i+1, i+2, ..., j-1]; start (!) defaults to 0.    When step is given, it specifies the increment (or decrement).    For example, range(4) returns [0, 1, 2, 3].  The end point is omitted!    These are exactly the valid indices for a list of 4 elements.

 當然,我們也可以這樣:

>>> for obj in range(5,10):print obj,5 6 7 8 9

 range()經常和len()函數一起使用用於字串索引,如:

>>> name='BeginMan'>>> for obj in range(len(name)):print '(%d)' %obj,name[obj](0) B(1) e(2) g(3) i(4) n(5) M(6) a(7) n

 enumerate()的強勢圍攻,
上面的例子迴圈有些約束,Python2.3推出了enumerate()函數來解決這一問題,enumerate:枚舉 的意思:

>>> for i,j in enumerate(name):print i,j0 B1 e2 g3 i4 n5 M6 a7 n>>> 

 4、列表解析

5、檔案操作

開啟檔案:handle=open(file_name,access_mode='r')
如果開啟成功,一個檔案對象的控制代碼將會被返回,就可以通過它的控制代碼進行一系列的操作。

filename=raw_input('Enter file name:')#filename:對應檔案完整路徑,這裡建立一個py.txt與.py檔案同級fobj=open(filename,'r') #獲得檔案對象的控制代碼 fobjfor eachLine in fobj:    print eachLinefobj.close()    #一次讀入檔案的所有行然後關閉檔案,再迭代每一行的輸出

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.