1.常用快捷方式:
- control + / ----- 單行注釋
- control + s ----- 保存
- control + b ----- 編譯(編譯執(zhí)行)
- control + n ----- 新建文件
- control + c ----- 復(fù)制
- control + v ----- 粘貼
- control + a ----- 全選
- control + x ----- 剪切
- control + z ----- 撤銷
- control + y / control + shift + z ---- 反撤銷
按住control不放,讓鼠標(biāo)可以同時(shí)在多個(gè)位置設(shè)置光標(biāo)
control + f ----- 彈出搜索框
2.print函數(shù)是python內(nèi)置函數(shù)太闺,作用是在控制臺(tái)打印print后面()里面的任何內(nèi)容
()里面的單引號(hào)寺惫,是字符串的標(biāo)志竿滨,而不是內(nèi)容
在python2.x中 print 'hello world'
在python3.x中 print后面需要括號(hào)
A.B.C版本號(hào)敛劝。A ---> 重大修改(不向下兼容) B ---> 添加新的功能 C ---> 修復(fù)bug
注釋
注釋就是代碼源文件中担孔,用來進(jìn)行注解說明的文字巫财,不會(huì)對(duì)代碼的功能產(chǎn)生任何影響
注意:好的代碼和好的程序員,需要對(duì)代碼通過注釋進(jìn)行說明
#是單行注釋
"""
這是多行注釋
"""
補(bǔ)充:編程語(yǔ)言中涉及到的所有的符號(hào)酱塔,都是指的英文輸入法狀態(tài)下的符號(hào)
標(biāo)識(shí)符
標(biāo)識(shí)符是用來程序中命名用的沥邻。(比如:變量名、類名、函數(shù)名)
a.標(biāo)識(shí)符是由字母贸诚、數(shù)字和下劃線組成媒怯,并且數(shù)字不能開頭(硬性) --- python3.x中鳖敷,標(biāo)識(shí)符里面可以有中文(但是不推薦使用)
b.不能是關(guān)鍵字(保留字)(硬性)
c.大小寫敏感(區(qū)分大小寫棍潘,aaa和Aaa亦歉、AAA肴楷、AAa是不一樣的)
d.要見名知義(規(guī)范)
e.不推薦使用python中的內(nèi)置函數(shù)鞠值、類名去作為標(biāo)識(shí)符(規(guī)范)
3.關(guān)鍵字
系統(tǒng)保留的有特殊功能或者特殊意義的一些單詞。這些單詞不能用來給變量\函數(shù)\類等命名的
'False', 'None', 'True', 'and', 'as', 'assert', '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'
import keyword
print (keyword.kwlist)
4.行與縮進(jìn)
縮進(jìn):每一行代碼的位置,與行開頭位置之間的空格
在python中弧关,縮進(jìn)的寫法有嚴(yán)格的規(guī)范株憾。同一級(jí)的代碼嗤瞎,必須在同一個(gè)縮進(jìn)下面靠胜。
如果在不該有空格產(chǎn)生的位置出現(xiàn)了多余的空格菠赚,程序會(huì)報(bào)錯(cuò)(IndentationError);如果在需要縮進(jìn)的時(shí)候沒有縮進(jìn)也會(huì)報(bào)錯(cuò)
關(guān)于行的規(guī)范:
函數(shù)和類的聲明的前后必須要有兩個(gè)換行必盖。一般一個(gè)功能實(shí)現(xiàn)完塌忽,實(shí)現(xiàn)下一個(gè)功能的時(shí)候擦耀,最好也換行
print('a')
5.多行語(yǔ)句
一條語(yǔ)句在多行顯示吁系。
a.在需要換行的地方加反斜杠(),然后再換行
b.字典滞造、列表买窟、集合和元組等容器類型數(shù)據(jù)的字面量学赛,在多行顯示的時(shí)候可以直接換行
python中,一條語(yǔ)句結(jié)束滴劲,可以不寫分號(hào);但是如果一行中要寫多條語(yǔ)句攻晒,那么每條語(yǔ)句之間必須使用分號(hào)隔開
print('aaaa'); print('bbbb')
print('阿克蘇的回復(fù)了卡號(hào)是看撒謊的飯卡合適地方\
控件撒后方可撒發(fā)哈薩克積分電話卡雙方都卡刷卡絕代風(fēng)華\
手機(jī)卡好煩的會(huì)計(jì)師費(fèi)薩芬驕傲是否看好撒快遞費(fèi)阿撒即可恢復(fù)到卡上反饋')
print([1,2,3,4,
5,6,7,8,
9,10,11,12
])
6.字面量
數(shù)據(jù)類型對(duì)應(yīng)的具體的值
10,100,-12 ---> 整數(shù)
12.5, 3.1415926, -0.13 ---> 小數(shù)
12e2, 9e-2 ---> 數(shù)字
9+10j ---> 復(fù)數(shù)
'hello world', '123', 'abc', "abcd", "!78u" ---> 字符串
True, False ---> 布爾值
[1,2,'hu','assd'] ---> 列表
{'a':1, 'b':'123'} ---> 字典
7.python中的基本數(shù)據(jù)類型
數(shù)字(整型(int)、浮點(diǎn)型哑芹、布爾炎辨、復(fù)數(shù))、字符串(str)聪姿、列表(list)碴萧、字典(dict)、集合(set)末购、元組(tuple)破喻、none --> 代表沒有和空
整型: int (在python2.X有l(wèi)ong) --> 值是所有的整數(shù)
浮點(diǎn)型: float --> 包含所有的小數(shù),和科學(xué)計(jì)數(shù)
布爾: bool --> 值只有True和False
復(fù)數(shù): complex --> 值包含所有的復(fù)數(shù)
可以使用type函數(shù)查看數(shù)據(jù)的類型: type(數(shù)據(jù))
print(type(10e2))
print(type('abc'))
變量
什么是變量:
在程序中可以通過變量來存儲(chǔ)數(shù)據(jù)(容器)
怎么聲明變量
嚴(yán)格來說盟榴,python中的變量是不需要聲明的曹质,直接通過賦值符號(hào)(=)給變量賦值,就是在聲明變
量
因?yàn)閜ython是動(dòng)態(tài)語(yǔ)言擎场,在聲明變量的時(shí)候羽德,不需要指定變量的類型。并且同一個(gè)變量可以賦不
同類型的值
格式: 變量名 = 值
變量名:標(biāo)識(shí)符迅办,PEP8的命名方式(所有的字母都小寫宅静,多個(gè)單詞
之間用下劃線隔開,例如: user_name)
駝峰式命名: 第一個(gè)單詞首字母小寫站欺,后邊每個(gè)單詞的首字母都大寫(例如:userName)
聲明了一個(gè)變量age,并且賦值為18
age = 18
使用變量的時(shí)候姨夹,就相當(dāng)于使用變量中存的值
print(age)
student_age = 20
print(type(student_age))
1.如果重新給一個(gè)變量賦值,那么新賦的值會(huì)覆蓋原來的值
2.同一個(gè)變量可以賦不同類型的值
student_age = 'abc'
print(student_age, type(student_age))
print(student_name) NameError
補(bǔ)充:
一個(gè)數(shù)據(jù)有type(類型)矾策、id(數(shù)據(jù)存儲(chǔ)在計(jì)算機(jī)中的地址)和value(值)三個(gè)屬性
變量存儲(chǔ)數(shù)據(jù)的時(shí)候磷账,有兩種情況。第一情況:存value ---> 數(shù)字類型贾虽、字符串逃糟, 第二種情況:存id ----> 字典、列表、集合绰咽、元祖蛉抓、類的對(duì)象等
number = 10
number2 = 10
print(id(number),id(number2))
運(yùn)算符
數(shù)學(xué)運(yùn)算符、比較運(yùn)算符剃诅、邏輯運(yùn)算符、賦值運(yùn)算符驶忌、位運(yùn)算符(針對(duì)二進(jìn)制的每一位)
1.數(shù)學(xué)運(yùn)算符(+矛辕、-、付魔、/聊品、%、*几苍、//)
(+) : 求和
注意: 求和操作翻屈,+兩邊必須是數(shù)字類型
- True --> 1 False --> 0
print(10+20.4, True+1)
number = 100 + 11
print(number)
(-) : 求差
print(100-12)
( *) : 求乘積
print(3.12*2)
number = 3 * 9
(/) : 求商
print(4/2)
print(5/2)
(%) : 求上個(gè)數(shù)相除的余數(shù)
- 10 / 2 = 5...0
print(3%2)
print(109%10)
( **) : 冪運(yùn)算
x ** y: 求x的y次方
浮點(diǎn)數(shù)在計(jì)算中存儲(chǔ)的時(shí)候,有的時(shí)候會(huì)有一定的誤差
number = 4.2 ** 3
print(number)
(//) : 整除
求商妻坝,但是只取商的整數(shù)部分
print(5//2)
取一個(gè)二位整數(shù)的十位數(shù)(78):
print(78//10)
取2345中的4:
print(2345%100//10)
print(2345//10%10)
2.比較運(yùn)算符
伸眶、< 、==刽宪、>= 厘贼、<=、!=
比較運(yùn)算符的結(jié)果全是布爾: Ture圣拄、False
1.>
- x > y: 判斷x是否大于y,如果是結(jié)果是Ture嘴秸,否則是False
resulut = 10 > 20
print(resulut, 100 > 20)
2.<
print(10 < 20)
3.==
- x == y: 如果x和y相等,結(jié)果就是True,否則是False
number = 12.5
number2 = 12
print(number == number2)
4.>=庇谆、 <=
10 >= 5 # True
10 >= 10 # True
5. !=
- x != y : 如果x和y不相等岳掐,結(jié)果是True,否則是False
6. 在python中,可以像數(shù)學(xué)中一樣饭耳,連續(xù)判斷
number = 15
resulut = 10<number<20 # 判斷number是否在10到20之間
print(resulut)
邏輯運(yùn)算符
與(and)串述、或(or)、非(not)
邏輯運(yùn)算符的運(yùn)算數(shù)據(jù)是布爾值哥攘,結(jié)果也是布爾值
布爾1 and 布爾2: 兩個(gè)都為Ture結(jié)果才是True,只要有一個(gè)是False,結(jié)果就是False剖煌。 并且
需要兩個(gè)或者多個(gè)條件同時(shí)滿足,就使用邏輯與(and)
布爾1 or 布爾2: 只要有一個(gè)是Ture,結(jié)果就是Ture逝淹。兩個(gè)都是False結(jié)果才是False耕姊。 或者
需要兩個(gè)或者多個(gè)條件中滿足一個(gè)就可以,就使用邏輯或(or)
not 布爾1: 如果是True,結(jié)果就是False;如果是False,結(jié)果就是True栅葡。
需要不滿足某個(gè)條件的時(shí)候才為True
- 寫一個(gè)條件茉兰,判斷一個(gè)人的年齡是否滿足青年的條件(年齡大于18并且小于28,而是還不能是20歲)
age = 30
print(age>18 and age<28 and age!=20)
- 平均成績(jī)大于90分,或者操評(píng)分大于100,并且英語(yǔ)成績(jī)還不能小于80分
score = 95
score2 = 90
english = 90
print('===:',score>90 or score2>100 and english >= 80)
- 成績(jī)不低于60分
score = 70
print(score >= 60)
print(not score<60)
not age > 10
not True
not False
4.賦值運(yùn)算符
=, += , -= , = ,/= ,%= ,*=, //=
賦值運(yùn)算符的作用: 將賦值符號(hào)右邊的表達(dá)式的值賦給左邊的變量
表達(dá)式: 有結(jié)果的的語(yǔ)句欣簇,例如: 10, 'abc', 10+20, 30>10.5等
賦值符號(hào)的左邊必須是變量
賦值符號(hào)规脸,是先算右邊的結(jié)果坯约,然后再把結(jié)果賦給左邊的變量
number = 100
number += 10 # 相等于:number = number + 10
print(number)
number *= 2 # number = number * 2
print(number)
5. 運(yùn)算符的優(yōu)先級(jí)
10+20*3-5/2 = 10+60-2.5 = 67.5 --- 數(shù)學(xué)運(yùn)算順序
優(yōu)先級(jí)從低到高: 賦值運(yùn)算符<邏輯運(yùn)算符<比較運(yùn)算符<算術(shù)運(yùn)算符
算術(shù)運(yùn)算符中: 先冪運(yùn)算再乘除取余取整再加減
如果你不確定運(yùn)算順序,可以通過添加括號(hào)來改變運(yùn)算順序莫鸭。有括號(hào)就先算括號(hào)里面的
resulut = 10 + 20 > 15 and 7 * 8 < 30 + 60
# resulut = 30 > 15 and 56 < 90
# resulut = True and True
# result = True
print(resulut)
print(10 + 20 * 3 / 2 - 10%3)
# 10+30-1
# 39
print(10*2**2)
print(10 + 20 * 3 / (2 - 10)%3)
# 10 + 20 * 3 /(-8)%3
# 10 + 60/(-8)%3
# 10 + (-7.5)%3
# 10 + 1.5
# 11.5
進(jìn)制的轉(zhuǎn)換
數(shù)據(jù)在計(jì)算機(jī)中的存儲(chǔ)闹丐,存的都是二進(jìn)制數(shù)(0101.....)
1.認(rèn)識(shí)十進(jìn)制、二進(jìn)制被因、八進(jìn)制卿拴、十六進(jìn)制
1.十進(jìn)制
基數(shù):0,1梨与,2堕花,3,4粥鞋,5缘挽,6,7呻粹,8壕曼,9
特點(diǎn):逢10進(jìn)1 10 ---> 10
12345 = 5+40+300+2000+10000
= 5*1 + 4*10 + 3*100 + 2*1000+1*10000
= 5*(10^0) + 4*(10^1)+3*(10^2)+2*(10^3)+1*(10^4)
2.二進(jìn)制
基數(shù):0,1
特點(diǎn):逢2進(jìn)1 10 ---> 2
101011 = 1*(2^0)+1*(2^1)+0*(2^2)+1*(2^3)+0*(2^4)+1*(2^5)
= 1 + 2 + 8 + 32
= 43
3.八進(jìn)制
基數(shù):0尚猿,1窝稿,2,3凿掂,4伴榔,5,6庄萎,7
特點(diǎn):逢8進(jìn)1 12 ---> 10
24 = 4*(8^0) + 2*(8^1) = 20
4.十六進(jìn)制
基數(shù):0-9踪少,a-f(A-F) -- a=10,b=11,c=12,d=13,e=14,f=15
特點(diǎn):逢16進(jìn)1 a ---> 10
2f = 47
進(jìn)制間的轉(zhuǎn)換:
十進(jìn)制轉(zhuǎn)換成其他進(jìn)制:整除取余法
八進(jìn)制轉(zhuǎn)二進(jìn)制:一位八進(jìn)制轉(zhuǎn)換成三位二進(jìn)制 --> 23 = 010 011
十六進(jìn)制轉(zhuǎn)二進(jìn)制:一位十六進(jìn)制抓換成四位的二進(jìn)制 --> 2f = 0010 1111
2.python中的二進(jìn)制、八進(jìn)制和十六進(jìn)制
默認(rèn)的數(shù)字都是10進(jìn)制
a.二進(jìn)制
基數(shù)是0糠涛,1援奢,并且數(shù)字前加前綴0b表示二進(jìn)制
0b1101
0b1234 # 報(bào)錯(cuò) SyntaxError
bin(整數(shù)) -> 將其他進(jìn)制的整數(shù)轉(zhuǎn)換成二進(jìn)制數(shù)
print(bin(10))
print(bin(0x10))
b.八進(jìn)制
基數(shù)是0-7,并且數(shù)字前加0o或者0O表示八進(jìn)制
0o176
0O123
oct(整數(shù)) -> 將其他進(jìn)制的整數(shù)轉(zhuǎn)換成八進(jìn)制
print(oct(10))
c.十六進(jìn)制
基數(shù)0-9忍捡,a-f(A-F),并且數(shù)字前加0x或者0X表示十六進(jìn)制
0x1a
0X2af
print(0xff)
print(hex(10))