day2 python基本語(yǔ)法,數(shù)據(jù)類型,變量,運(yùn)算符

1.基本語(yǔ)法

1.1注釋

??寫(xiě)在代碼中不參與編譯執(zhí)行的部分就是注釋。作用是用來(lái)對(duì)代碼進(jìn)行注釋說(shuō)明,方便程序更好的閱讀代碼
注意:要勤寫(xiě)注釋,方便自己也方便別人!
單行注釋:在文本內(nèi)容的前面#
多行注釋
方法一:每一行前都加一個(gè)#號(hào)
#我是注釋1
#我是注釋2
方法二:將注釋放在三個(gè)單引號(hào)/三個(gè)雙引號(hào)中(推薦使用雙引號(hào))
"""
我是多行注釋1
我是多行注釋2
"""

1.2標(biāo)識(shí)符

??標(biāo)識(shí)符是用來(lái)命名的(比如變量名、函數(shù)名、類名)
要求:a.由字母數(shù)字和下劃線組成,并且數(shù)字不能開(kāi)頭 --- python2.x規(guī)范,
b.在Unicode編碼中,除了ASCII碼表中的字母、數(shù)字、下劃線以外的部分不能作為標(biāo)識(shí)符的一部分,其他的都可以。數(shù)字不能開(kāi)頭 (由字母數(shù)字下劃線和中文組成,數(shù)字不能開(kāi)頭) --- python3.x規(guī)范
注意:在實(shí)際開(kāi)發(fā),現(xiàn)在還是推薦使用python2.x的規(guī)范

abc = 100
abc123 = 100
abc_123 = 20
_123 = 100
\# 1abc = 100   # 報(bào)錯(cuò):SyntaxError
你好 = 100

1.3語(yǔ)句

??C/Java語(yǔ)法,每條語(yǔ)句結(jié)束必須加分號(hào)。
python中一條語(yǔ)句結(jié)束可以加分號(hào)也可以不交;如果一行要顯示多條語(yǔ)句,那么每條語(yǔ)句之間必須加分號(hào);
print('hello python!'); print('hello world!')

1.4.行和縮進(jìn)

??python中對(duì)縮進(jìn)有嚴(yán)格規(guī)范,要求同樣等級(jí)的代碼對(duì)應(yīng)的縮進(jìn)必須一致;只有在需要產(chǎn)生代碼塊的時(shí)候才需要加縮進(jìn)
行:要求函數(shù)的聲明和類的聲明的前后需要有兩個(gè)空行(不會(huì)報(bào)錯(cuò))

print('abc') 
    # print('ABC')  # IndentationError:unexpected indent

1.5多行顯示問(wèn)題

a.在需要換行的位置加,然后再換行(\不要破壞數(shù)據(jù)本身)
b.如果是列表、字典、元祖和集合的值,可以直接換行

sum1 = 1992374821734 + 391437128467 + \
       4985749775 + 98347592367485+ 78 + 787834 \
       + 4767582 + 3756 + 398475
names = [
    12, 
    787347, 
    298378, 
    972893748973, 39785,
    2738957, 4273857, 
    342978, 3849758,
     3487985, 48993
     ]  

1.6常見(jiàn)的數(shù)據(jù)類型及其字面量

整型(int)、浮點(diǎn)型(float)、布爾(bool)、字符串(str)、列表(list)、字典(dict)、元祖(tuple)、集合(set)等
整型:相當(dāng)于數(shù)學(xué)中的整數(shù),例如:100, -12, +30,0
浮點(diǎn)型:帶小數(shù)點(diǎn)的數(shù), 例如:12.5, 3.14, 0.23, 0.0, -12.34
布爾:只有兩個(gè)值分別是True(真)和False(假)
字符串: 用單引號(hào)或者雙引號(hào)括起來(lái)的數(shù)據(jù), 例如:'abc', '100', "abc100=~"

1.7關(guān)鍵字(保留字)

??在python中有特殊功能和特殊意義的一些標(biāo)識(shí)符(單詞)。

import keyword   # 導(dǎo)入keyword模塊
print(keyword.kwlist)  # 打印所有的關(guān)鍵字
['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']

注意:在上面的[]中的內(nèi)容才是關(guān)鍵字,其他的都不是

2.常用快捷鍵

image.png

3.數(shù)據(jù)類型

??不同的類型,在內(nèi)存中存儲(chǔ)時(shí)候所占的內(nèi)存不一樣

3.1.python中的數(shù)字類型有四個(gè):整型(int)、浮點(diǎn)型(float)、布爾(bool)、復(fù)數(shù)(complex);

??a.整型(int):包含python所有的整數(shù),python3.x整型只有int類型這一種,但是python2.x除了int還有l(wèi)ong
100
123
-78
+782
??b.浮點(diǎn)型(float):包含python所有的小數(shù)
注意:浮點(diǎn)型支持科學(xué)計(jì)數(shù)法
12.89
-123.9098
+237.890

print(12e2)      # 12*10^2    1200.0
print(12e-3)     # 12*10^(-3)    0.012 

??c.布爾(bool): 布爾類型的值只有兩個(gè),分別是True(真)和False(假)
注意:布爾值的首字母是大寫(xiě)的
True對(duì)應(yīng)的數(shù)值其實(shí)是1, False對(duì)應(yīng)的數(shù)值是0
True
False

print(False+1)

??d.復(fù)數(shù)(complex)
復(fù)數(shù):有實(shí)部和虛部組成的數(shù)字
10+10j

3.2.type(數(shù)值/變量): 獲取括號(hào)中值的類型

print(type(10j))
print(type(100))
print(type(True))
print(type(2e2))

3.3.類型名():將其他的類型的數(shù)據(jù)轉(zhuǎn)換成當(dāng)前類型

print(int(12.5))
print(bool(10))
print(float(100))
print(complex(100))
print(float(100+10j))  

注意:復(fù)數(shù)不能轉(zhuǎn)換成整型/浮點(diǎn)型

4.變量

4.1.什么是變量

??聲明變量,就是在內(nèi)存中開(kāi)辟空間存儲(chǔ)數(shù)據(jù)。變量就是程序在內(nèi)存中存儲(chǔ)數(shù)據(jù)的容器

4.2.怎么聲明變量

??C/Java聲明變量: 類型 變量名 = 初值;
Python聲明變量: 變量名 = 初值
變量名 = 初值
說(shuō)明:
a.變量名:程序員自己命名,要求是標(biāo)識(shí)符,并且不能是關(guān)鍵字; 所有的字母必須是小寫(xiě)的,如果變量名是由多個(gè)單詞組成,多個(gè)單詞之間用下劃線隔開(kāi);見(jiàn)名知義(看見(jiàn)變量名,要知道這個(gè)變量大概存的是什么樣的數(shù)據(jù))
b. = :賦值符號(hào),功能是將=右邊的值賦給左邊的變量
c.初值:有值的表達(dá)式(具體的字面量、其他已經(jīng)聲明過(guò)的變量)
聲明一個(gè)變量number,并且賦值為100

number = 100 
print(number)
True = 12.5   # SyntaxError: can't assign to keyword
1abc = True   # SyntaxError: invalid syntax
ABC = 10j
student_name = '小明'
print(student_name)

注意:雖然int、float、bool、str等不是關(guān)鍵字,但是在需要命名的時(shí)候最好用他們來(lái)命名。否則會(huì)改變他們?cè)瓉?lái)的功能;

int = 100
print(int)
 int(80.9)

4.3.聲明完一個(gè)變量可以給變量重新賦值

??重新賦值后,新的值會(huì)覆蓋變量中原來(lái)的值

student_name = '小花'
print(student_name)

python中,同一個(gè)變量可以存儲(chǔ)不同類型的值

student_name = 100
print(student_name)

4.同時(shí)聲明多個(gè)變量
??變量名1=變量名2=變量名3 = 初值

a = b = c = 123
print(a,b,c)  # print同時(shí)打印多個(gè)數(shù)據(jù),多個(gè)數(shù)據(jù)之間用逗號(hào)隔開(kāi)

將變量student_name中的值,賦給new_name
new_name = student_name
注意:變量只有在賦完值后才能使用(只能聲明后才能使用)
print(new_name2) # definedNameError: name 'new_name2' is not

5.運(yùn)算符

??python中的運(yùn)算符包括:數(shù)字運(yùn)算符,比較,邏輯,賦值,位運(yùn)算
數(shù)學(xué)運(yùn)算符:+—*/% // **
/與c中不一樣
print(1/3)#0.33333333333333
%取余數(shù)
print(2.4%2)#0.3999^浮點(diǎn)數(shù)取余會(huì)不精確。
//(整除)取商的整數(shù)部分

print(5//2)
print(6.40//2)#3.0

**(冪運(yùn)算):求冪

print(3**2)#9
print(9**0.5)#開(kāi)平方
print(8**(1/3))#開(kāi)3方

比較運(yùn)算符:> < == != >= <=
比較結(jié)果為T(mén)rue或False

print(int(100==10)) #0
num=10
print(num==100)#False
print(num)#10

邏輯運(yùn)算符:and與,or或,not非(均為關(guān)鍵字)
邏輯運(yùn)算符運(yùn)算對(duì)象和結(jié)果均為bool
and全True為T(mén)rue
or全False為False
not取反

print(True and True)
print(True and False)
print(False or False)
print(True or False)
print(not True)

可以有多個(gè)and,or,not
python中的and和or會(huì)有短路現(xiàn)象:
False amd (bool2),不會(huì)判bool2的值。
賦值運(yùn)算符:= += -= *= /= //= **=
賦值運(yùn)算符左邊必須是變量
先計(jì)算賦值運(yùn)算符右邊的結(jié)果,在賦值給左邊

result=10>100
print(result)#False

+= -= = /= //= =要求左邊的變量本身必須是有值的
運(yùn)算符優(yōu)先級(jí):
數(shù)學(xué)運(yùn)算符>比較>邏輯>賦值
數(shù)學(xué)運(yùn)算符中
>
,/,%,//>+,-
print((10>100)-20)#-20d'j'f

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容