python筆記--語句

來源:互聯網
上載者:User

標籤:python、語句


python語句特點:

1.條件後面都以分號結尾

2.縮排問題:縮排是python表示語句塊的唯一方法,一個語句快中的所有語句必須使用相同的縮排。關於縮排風格,標準python風格是每個縮排層級使用4個空格,最好不要使用Tab定位字元,因為不同的編輯器處理定位字元的方式不同。

條件判斷

1.單分支if語句

if <條件判斷>:     <執行>

如果if語句判斷是True,就把縮排的語句執行了,否則,什麼也不做。也可以給if添加一個else語句,意思是,如果if判斷是False,不要執行if的內容,去把else執行了。

例如:

a=10if a>20:    print "more than 20"else:    print "less than 20"

很明顯,執行程式後,在螢幕列印出了”less than 20”,有一種“三目運算式”可以簡寫if語句,例如:

a=10result=("more than 20" if a>20 else "less than 20")print (result)

注意:如果我們把判斷語句的小括弧換成方括弧,那麼輸出結果就是一個列表,即[‘less than 20‘]。

 

2.多分支if語句

if <條件判斷1>:    <執行1>elif     <執行2>elif     <執行3>else:     <執行4>

if語句執行有個特點,它是從上往下判斷,如果在某個判斷上是True,把該判斷對應的語句執行後,就忽略掉剩下的elif和else。

 

 

補充:

1.條件為True的情況,除了條件成立,還有就是:

if x:      print(‘True‘)

只要x是非零數值、非Null 字元串、非空list等,就判斷為True,否則為False。

 

2.input問題

執行程式後需要使用者手動輸入,這就需要使用”input”。在python3.5中,input會把所有輸入的字元轉為”str”資料類型嗎,例如:

>>> a=input("number:")number:5>>> type(a)<class ‘str‘>>>> b=int(input("number:"))number:10>>> type(b)<class ‘int‘>

3.pass

pass語句作用是不執行當前代碼塊,例如:

a=10if a>20:    print "more than 20"else:    pass

執行程式後,返回結果為空白。

 

迴圈語句

1.for迴圈

(1)迭代對象

遍曆字串,每個字元當做單個遍曆:

>>> for i in "abc":...     print i...abc

使用 range()函數產生一個數字序列列表,並遍曆:

>>> for i in range(1,5): ...     print i...1234#range()只有一個元素,從0開始遍曆:>>> range(5)[0, 1, 2, 3, 4]

2)嵌套迴圈

逐個迴圈判斷外層列表裡元素是否存在內層列表:

>>> for i in range(1,6):...     for x in range(3,8):...        if i == x:...           print i...345

3)簡寫語句

簡寫 for 語句:

>>> result = (x for x in range(5))>>> result<generator object <genexpr> at 0x030A4FD0>>>> type(result)<type ‘generator‘>

# 同樣用中括弧會以列表格儲存體

>>> result = [ x for x in range(5)]>>> type(result)<type ‘list‘>>>> result[0, 1, 2, 3, 4]

for 和 if 語句寫一行:

>>> result = [ x for x in range(5) if x % 2 == 0]>>> result[0, 2, 4]

這種使用中括弧括起來的運算式稱為列表解析運算式,每一次迭代,都會把迭代對象放到 x 變數中,最後運算式計算值產生一個列表。

 

2.while迴圈

1)輸出序列

當條件不滿足時,停止迴圈:

>>> count = 0>>> while count < 5:...     print count    ...     count += 1    ...01234

2)死迴圈

>>> import time>>> i = 1>>> while True:       ...     print i          ...     i += 1             ...     time.sleep(0.5)...123......

注意:當運算式值為 true 或者非零時,都會一直迴圈。

 

補充:

break

在迴圈中,break語句可以提前退出迴圈。

continue

在迴圈過程中,也可以通過continue語句,跳過當前的這次迴圈,直接開始下一次迴圈。

 ,

編寫python指令碼時,有時候需要將輸出的內容不換行,按一行輸出,可以在語句末尾添加一個逗號,例如:

>>> for i in range(5):print i,0 1 2 3 4


 

練習:

執行程式後,要求使用者輸入姓名和密碼,正確則返回歡迎資訊,錯誤返回提示資訊,三次錯誤後退出程式。

#!/usr/bin/env python# -*- coding:utf-8 -*-a={‘zhangsan‘:‘123abc‘,‘lisi‘:‘2‘,‘wangwu‘:‘3‘}b=a.keys()for i in range(3):    name=raw_input("please enter your name:")    password=raw_input("please enter your password:")    if name in b:        if password==a[name]:            print ("welcome!")            break        else:            print ("your password is false!")    else:        print ("no this user!")else:    print ("too much retry!")


本文出自 “網路技術” 部落格,請務必保留此出處http://fengjicheng.blog.51cto.com/11891287/1927651

python筆記--語句

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.