Lesson 008 —— python 初识
Lesson 008 —— python 初識(shí)
python 文件
python 文件名
Python 文件名的后綴可以是任意的,但是,之后導(dǎo)入我們的模塊的時(shí)候,如果文件后綴名不是 .py ,那么會(huì)報(bào)錯(cuò),所以,python 文件的后綴名是 .py。
python 執(zhí)行文件
python 文件指定解釋器與文件編碼格式
### 指定解釋器 # 1. 必須是文件的第一行 # 2. 必須以 #! 開頭 # 3. 后面是解釋器的全路徑名#!/bin/sh # shell腳本 #!/usr/bin/perl # perl腳本 #!/usr/bin/python # python腳本 #!/usr/bin/python3 # python3腳本 #!/usr/bin/python2 # python2腳本# 不清楚全路徑,或者開發(fā)環(huán)境與運(yùn)行環(huán)境路徑不同,為了保證兼容性, # 也可以寫作:(執(zhí)行時(shí)會(huì)自動(dòng)搜索解釋器的絕對(duì)路徑) #!/usr/bin/env python3### 指定編碼格式(針對(duì) python2) # 使用一種特殊的注釋來聲明編碼格式,如何判斷這種格式也用了很簡(jiǎn)單粗暴有效的辦法--正則表達(dá)式;正則表達(dá)式如下:(匹配編碼方式使用了Python自帶的codecs模塊。) ^[ \t\v]*#.*?coding[:=][ \t]*([-_.a-zA-Z0-9]+)# 以下方式都可以: # -*- coding:utf-8 -*- # Emacs 推薦寫法 # coding=utf-8 # -*- coding=utf-8 -*-輸入與輸出
input(): 輸入函數(shù)
# input() 函數(shù)接受一個(gè)標(biāo)準(zhǔn)輸入數(shù)據(jù),返回為 string 類型。 # input(提示信息)>>>a = input("input:") input:123 # 輸入整數(shù)print(): 輸出函數(shù)
# print() 函數(shù)輸出字符串和數(shù)字>>>print("runoob") # 輸出字符串 runoob >>> print(100) # 輸出數(shù)字 100 >>> str = 'runoob' >>> print(str) # 輸出變量 runoobpython 變量
變量的定義:
level = 1 # level : 變量名, = :賦值符號(hào),1 :值變量的規(guī)則:
數(shù)字,字母,下劃線, 任意組合,數(shù)字不能開頭,python 的關(guān)鍵字不能用,變量名盡量有意義。(變量表示的某種意義)
python 關(guān)鍵字和內(nèi)置的類、函數(shù)不能用作變量名
資源回收機(jī)制:
python 有一個(gè)資源回收機(jī)制,引用計(jì)數(shù)為 0 ,會(huì)被python的垃圾回收機(jī)制定期自動(dòng)回收釋放空間。
python 創(chuàng)建變量并不是存儲(chǔ)變量的值,變量存儲(chǔ)的是值的地址,類似于 C 語言的指針。
python 關(guān)鍵字
>>> import keyword >>> keyword.kwlist ['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']基本數(shù)據(jù)類型
python 中的六個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)類型:
- Number(數(shù)字)
- String(字符串)
- List(列表)
- Tuple(元組)
- Set(集合)
- Dictionary(字典)
python 的六個(gè)數(shù)據(jù)類型中
- 不可變數(shù)據(jù)(3 個(gè)):Number(數(shù)字)、String(字符串)、Tuple(元組);
- 可變數(shù)據(jù)(3 個(gè)):List(列表)、Dictionary(字典)、Set(集合)。
python 基本運(yùn)算符號(hào)
算數(shù)運(yùn)算符
+ 加: 10 + 20 = 30 - 減: 10 - 20 = -10 * 乘: 10 * 20 = 200 / 除: 10 / 20 = 0.5 // 取整除: 9 // 2 = 4 % 取余數(shù): 9 % 2 = 1 ** 冪: 2 ** 3 = 8邏輯運(yùn)算符
and 只有 x 和 y 的值都為 True,才會(huì)返回 True;否則只要 x 或者 y 有一個(gè)值為 False,就返回 Falseor 只要 x 或者 y 有一個(gè)值為 True,就返回 True;只有 x 和 y 的值都為 False,才會(huì)返回 Falsenot 如果 x 為 True,返回 False;如果 x 為 False,返回 True賦值運(yùn)算符
(=) 賦值運(yùn)算符 (+=)加法賦值運(yùn)算符 ——c += a 等效于 c = c + a (-=)減法賦值運(yùn)算符 ——c -= a 等效于 c = c - a (*= )乘法賦值運(yùn)算符 ——c = a 等效于 c = c a (/= )除法賦值運(yùn)算符 ——c /= a 等效于 c = c / a (//=)取整除賦值運(yùn)算符 ——c //= a 等效于 c = c // a (%=)取模 (余數(shù))賦值運(yùn)算符 ——c %= a 等效于 c = c % a (**=)冪賦值運(yùn)算符 ——c = a 等效于 c = c a比較運(yùn)算符
== 等于 - 比較對(duì)象是否相等 != 不等于 - 比較兩個(gè)對(duì)象是否不相等 > 大于 - 返回x是否大于y < 小于 - 返回x是否小于y。所有比較運(yùn)算符返回1表示真,返回0表示假。這分別與特殊的變量True和False等價(jià)。注意,這些變量名的大寫。 >= 大于等于 - 返回x是否大于等于y。 <= 小于等于 - 返回x是否小于等于y。位運(yùn)算符
& 按位與運(yùn)算符:參與運(yùn)算的兩個(gè)值,如果兩個(gè)相應(yīng)位都為1,則該位的結(jié)果為1,否則為0 | 按位或運(yùn)算符:只要對(duì)應(yīng)的二個(gè)二進(jìn)位有一個(gè)為1時(shí),結(jié)果位就為1。 ^ 按位異或運(yùn)算符:當(dāng)兩對(duì)應(yīng)的二進(jìn)位相異時(shí),結(jié)果為1 ~ 按位取反運(yùn)算符:對(duì)數(shù)據(jù)的每個(gè)二進(jìn)制位取反,即把1變?yōu)?,把0變?yōu)?。~x 類似于 -x-1。 << 左移動(dòng)運(yùn)算符:運(yùn)算數(shù)的各二進(jìn)位全部左移若干位,由"<<"右邊的數(shù)指定移動(dòng)的位數(shù),高位丟棄,低位補(bǔ)0 >> 右移動(dòng)運(yùn)算符:把">>"左邊的運(yùn)算數(shù)的各二進(jìn)位全部右移若干位,">>"右邊的數(shù)指定移動(dòng)的位數(shù)成員運(yùn)算符
in 如果在指定的序列中找到值返回 True,否則返回 False。 not in 如果在指定的序列中沒有找到值返回 True,否則返回 False。身份運(yùn)算符
身份運(yùn)算符用于比較兩個(gè)對(duì)象的存儲(chǔ)單元
is is 是判斷兩個(gè)標(biāo)識(shí)符是不是引用自一個(gè)對(duì)象。x is y, 類似 id(x) == id(y) , 如果引用的是同一個(gè)對(duì)象則返回 True,否則返回 False is not is not 是判斷兩個(gè)標(biāo)識(shí)符是不是引用自不同對(duì)象運(yùn)算符優(yōu)先級(jí)
第一級(jí): ** 指數(shù) (最高優(yōu)先級(jí)) 第二級(jí): ~ + - 按位翻轉(zhuǎn), 一元加號(hào)和減號(hào) (最后兩個(gè)的方法名為 +@ 和 -@) 第三級(jí): * / % // 乘,除,取模和取整除 第四級(jí): + - 加法減法 第五級(jí): >> << 右移,左移運(yùn)算符 第六級(jí): & 位 'AND' 第七級(jí): ^ | 位運(yùn)算符 第八級(jí): <= < > >= 比較運(yùn)算符 第九級(jí): == != 等于運(yùn)算符 第十級(jí):= %= /= //= -= += *= **= 賦值運(yùn)算符 第十一級(jí): is is not 身份運(yùn)算符 第十二級(jí): in not in 成員運(yùn)算符 第十三級(jí): and or not 邏輯運(yùn)算符條件語句
Python條件語句是通過一條或多條語句的執(zhí)行結(jié)果(True或者False)來決定執(zhí)行的代碼塊。
條件語句流程圖:
條件語句格式:
if condition:pass # 條件為真執(zhí)行;pass是空語句,是為了保持程序結(jié)構(gòu)的完整性,不做任何事情,一般用做占位語句。 else:pass # 條件為假執(zhí)行或if condition_1:statement_block_1 elif condition_2:statement_block_2 else:statement_block_3# 縮進(jìn)四個(gè)空格,即一個(gè) TAB 鍵,python 使用縮進(jìn)表示代碼塊 # 如果 "condition_1" 為 True 將執(zhí)行 "statement_block_1" 塊語句 # 如果 "condition_1" 為False,將判斷 "condition_2" # 如果"condition_2" 為 True 將執(zhí)行 "statement_block_2" 塊語句 # 如果 "condition_2" 為False,將執(zhí)行"statement_block_3"塊語句注意: 1、每個(gè)條件后面要使用冒號(hào) :,表示接下來是滿足條件后要執(zhí)行的語句塊。 2、使用縮進(jìn)來劃分語句塊,相同縮進(jìn)數(shù)的語句在一起組成一個(gè)語句塊。 3、在Python中沒有switch – case語句。 4. 條件語句可嵌套循環(huán)語句
Python中的循環(huán)語句有 for 和 while。可嵌套。
Python循環(huán)語句的控制結(jié)構(gòu)圖如下所示:
while 循環(huán)
# 需要注意冒號(hào)和縮進(jìn)。另外,在Python中沒有do..while循環(huán)。 while 判斷條件:語句 # 條件為真執(zhí)行### while 循環(huán)使用 else 語句 # 在 while … else 在條件語句為 false 時(shí)執(zhí)行 else 的語句塊:#!/usr/bin/python3 count = 0 while count < 5:print (count, " 小于 5")count = count + 1 else:print (count, " 大于或等于 5")# 結(jié)果: 0 小于 5 1 小于 5 2 小于 5 3 小于 5 4 小于 5 5 大于或等于 5for 循環(huán)
Python for循環(huán)可以遍歷任何序列的項(xiàng)目,如一個(gè)列表或者一個(gè)字符串。
for循環(huán)的一般格式如下:
# for 循環(huán)在條件為假時(shí)執(zhí)行 else 語句 # break 語句用于跳出當(dāng)前的循環(huán) for <variable> in <sequence>:<statements> else:<statements># 實(shí)例 #!/usr/bin/python3 sites = ["Baidu", "Google","Runoob","Taobao"] for site in sites:if site == "Runoob":print("菜鳥教程!")breakprint("循環(huán)數(shù)據(jù) " + site) else:print("沒有循環(huán)數(shù)據(jù)!") print("完成循環(huán)!")# 結(jié)果 循環(huán)數(shù)據(jù) Baidu 循環(huán)數(shù)據(jù) Google 菜鳥教程! 完成循環(huán)!break,continue,else 子句
break: 跳出 for 和 while 的循環(huán)體。如果你從 for 或 while 循環(huán)中終止,任何對(duì)應(yīng)的循環(huán) else 塊將不執(zhí)行。
continue: 用來告訴Python跳過當(dāng)前循環(huán)塊中的剩余語句,然后繼續(xù)進(jìn)行下一輪循環(huán)。
else 子句: 循環(huán)語句可以有 else 子句,它在窮盡列表(以for循環(huán))或條件變?yōu)?false (以while循環(huán))導(dǎo)致循環(huán)終止時(shí)被執(zhí)行,但循環(huán)被break終止時(shí)不執(zhí)行。
pass: Python pass是空語句,是為了保持程序結(jié)構(gòu)的完整性。pass 不做任何事情,一般用做占位語句。
轉(zhuǎn)載于:https://www.cnblogs.com/arelive/p/python-8.html
總結(jié)
以上是生活随笔為你收集整理的Lesson 008 —— python 初识的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2018.10.17考试
- 下一篇: 创建多线程的4种方式