認識python
- control+/ 添加注釋/取消注釋
control+s 保存
control+b 編譯
control+r 執(zhí)行(編譯+執(zhí)行)
control+c 復制/拷貝
control+v 粘貼
control+x 剪切
control+z 撤銷
control+shift+z 反撤銷
control+y 反撤銷
control+f 查找
control+a 全選
control+n 新建
shift 可以選中部分(和鼠標配合,選中開始和結束中間的部分)
control 可以多個位置出現光標(和鼠標配合)
# 在控制臺打印括號中的內容
- print('Hello world! 你好,世界!')
print('歡迎來到python1807!')
print('歡迎來到千鋒~')
print('abc')
python基本語法
1.注釋
- 寫在代碼中不參與編譯執(zhí)行的部分就是注釋。作用是用來對代碼進行注釋說明,方便程序更好的閱讀代碼
- 注意:要勤寫注釋,方便自己也方便別人!
- a.單行注釋:在文本內容的前面前#
b.多行注釋
每一行前都加一個#號
我是注釋1
我是注釋2 - 將注釋放在三個單引號/三個雙引號中(推薦使用雙引號)
"""
我是多行注釋1
我是多行注釋2
"""
2.標識符
- 標識符是用來命名的(比如變量名、函數名、類名)
要求:
- a.由字母數字和下劃線組成,并且數字不能開頭 --- python2.x規(guī)范
- b.在Unicode編碼中,除了ASCII碼表中的字母、數字、下劃線以外的部分不能作為標識符的一部分,
- 其他的都可以。數字不能開頭
- 由字母數字下劃線和中文組成,數字不能開頭) --- python3.x規(guī)范
- 注意:在實際開發(fā),現在還是推薦使用python2.x的規(guī)范
abc = 100
abc123 = 100
abc_123 = 20
_123 = 100
# 1abc = 100 # 報錯:SyntaxError
你好 = 100
3.語句
- C/Java語法,每條語句結束必須加分號。
- python中一條語句結束可以加分號也可以不交;如果一行要顯示多條語句,那么每條語句之間必須加分號
print('hello python!'); print('hello world!')
4.行和縮進
- python中對縮進有嚴格規(guī)范,要求同樣等級的代碼對應的縮進必須一致;只有在需要產生代碼塊的時候才需要加縮進
- 行:要求函數的聲明和類的聲明的前后需要有兩個空行(不會報錯)
print('abc')
# print('ABC') # IndentationError:unexpected indent
5.多行顯示問題
- a.在需要換行的位置加,然后再換行(\不要破壞數據本身)
- b.如果是列表、字典、元祖和集合的值,可以直接換行
sum1 = 1992374821734 + 391437128467 + \
4985749775 + 98347592367485+ 78 + 787834 \
+ 4767582 + 3756 + 398475
names = [
12,
787347,
298378,
972893748973, 39785,
2738957, 4273857,
342978, 3849758,
3487985, 48993
]
6.常見的數據類型及其字面量
- 整型(int)、浮點型(float)、布爾(bool)、字符串(str)、列表(list)、字典(dict)、元祖(tuple)、集合(set)等
- 整型:相當于數學中的整數,例如:100, -12, +30,0
- 浮點型:帶小數點的數, 例如:12.5, 3.14, 0.23, 0.0, -12.34
- 布爾:只有兩個值分別是True(真)和False(假)
- 字符串: 用單引號或者雙引號括起來的數據, 例如:'abc', '100', "abc100=~"
7.關鍵字(保留字)
- 在python中有特殊功能和特殊意義的一些標識符(單詞)。
import keyword # 導入keyword模塊
print(keyword.kwlist) # 打印所有的關鍵字
['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']
# 注意:在上面的[]中的內容才是關鍵字,其他的都不是
數字類型
- 不同的類型,在內存中存儲時候所占的內存不一樣
1.python中的數字類型有四個:整型(int)、浮點型(float)、布爾(bool)、復數(complex)
- a.整型(int):包含python所有的整數,python3.x整型只有int類型這一種,
- 但是python2.x除了int還有l(wèi)ong
100
123
-78
+782
- b.浮點型(float):包含python所有的小數
- 注意:浮點型支持科學計數法
12.89
-123.9098
+237.890
print(12e2) # 12*10^2 1200.0
print(12e-3) # 12*10^(-3) 0.012
- c.布爾(bool): 布爾類型的值只有兩個,分別是True(真)和False(假)
- 注意:布爾值的首字母是大寫的
- True對應的數值其實是1,False對應的數值其實是0
True
False
print(False+1)
d.復數(complex)
- 復數:有實部和虛部組成的數字
10+10j - 2.type(數值/變量): 獲取括號中值的類型
print(type(10j))
print(type(100))
print(type(True))
print(type(2e2))
- 3.類型名():將其他的類型的數據轉換成當前類型
print(int(12.5))
print(bool(10))
print(float(100))
print(complex(100))
# print(float(100+10j)) # 注意:復數不能轉換成整型/浮點型
變量
1.什么是變量
- 聲明變量,就是在內存中開辟空間儲存數據,變量就是程序在內存中存儲數據的容器
2.怎么聲明變量
c/java聲明變量:類型 變量名 = 初值;
Python聲明變量:變量名 = 初值
變量名 = 初值
說明:
a.變量名:程序員自己命名,要求是標識符,并且不能是關鍵字;所有的字母必須是小寫的,如果變量名是由多個單詞組成,多個單詞之間用下劃線隔開;見名知意(看見變量名,要知道這個變量大概存的是什么樣的數據)
b. = :賦值符號,功能是將=右邊的值賦給左邊的變量
c.初值:有值的表達式(具體的字面量,其他已經聲明過的變量)
#聲明一個變量number,并且賦值為100
number = 100
print(number)
# 聲明一個變量student_name,賦值為'小明'
student_name = '小明'
print(student_name)
- 注意:雖然int、float、bool、str等不是關鍵字,但是在需要命名的時候最好別用他們來命名,否則會改變他們原來的功能
# int = 100
# print(int)
# int(80.9)
# 3.聲明完一個變量可以給變量重新賦值,重新賦值后,新的值會覆蓋變量中原來的值
student_name = '小花'
print(student_name)
# python中,同一個變量可以存儲不同類型的值
student_name = 100
print(student_name)
# 4.同時聲明多個變量
- 變量名1=變量名2=變量名3 = 初值
a = b = c = 123
print(a,b,c)
# 將變量student_name中的值,賦給new_name
new_name = student_name
- 注意:變量只有在賦完值后才能使用(只能聲明后才能使用)
# print(new_name2) # definedNameError: name 'new_name2' is not
運算符
- python中運算符:數學運算符、比較運算符、邏輯運算符、賦值運算符、位運算
1.數學運算符: +, - , * , /, %, //, **
- a. +:求和,和數學中的+號功能一樣
print(100 + 10)
print(-100 + 10)
print(12.5 + 3.14)
- b. -:求差,和數學中的-號功能一樣
result = 99 - 23 # 將99-23的結果賦給變量result
print(result)
- c. *:求乘積,和數學中的×號功能一樣
print(1.23 * 3)
print(-1.23 * 2)
print(-1.23 * -2)
- d. /(除):求商, 和數學中的÷號功能一樣
注意:和C語言中的/不一樣
print(5/2) # 2.5
print(12.5/5)
- e. %:求余數
- 注意:python中小數和整數都可以求余數
print(5%2)
print(6%2)
print(5.0 % 0.2)
- f. //(整除):求商,結果只取商的整數部分
print(5 // 2)
print(6.4 // 2)
- g. **(冪運算): 求冪
- x ** y : 求x的y次方
- 技巧:可以通過把y的值設置為1/2(0.5)來求一個數的開平方
print(2**3)
print(100**0.5)
- 2.比較運算符: >, <, ==, !=, >=, <=
所有比較運算的結果是布爾值:True/False
==: 判斷左右兩邊的值是否相等, =:將右邊的值賦給左邊的變量
print(100 > 10)
print(100 < 10)
print(12.5 == 12.5)
print(10 == 12.5)
number = 10
print(number == 100) # False
print(number)
print(number != 100) # True
print(100 >= 100)
print(10 < 11) # True
print(10 <= 10) # True
3.邏輯運算符: and(與), or(或), not(非)
邏輯運算符的結果是布爾值。運算對象也必須是布爾值
a. 值1 and 值2:兩個都為True,結果才是True。否則都是False
and相當于生活中的并且
print('==============================')
print(True and True) # True
print(False and True) # False
print(True and False) # False
print(False and False) # False
# 練習:設置獲得獎學金的條件:績點在3.5以上,并且操評分高于90分
grade = 3.8
score = 95
# 條件一:
grade > 3.5
# 條件二:
score > 90
兩個條件同時滿足
print(grade>3.5 and score > 90)什么時候使用and: 要求多個條件同時滿足的時候使用and連接
- b. 值1 or 值2:兩個都我False的時候結果才是False,否則就是True
print('=======================')
print(False or False) # False
print(True or False) # True
print(True or True) # True
# 練習:是否穿毛衣出門:溫度低于20度,或者風速高于5級
temperature = 18
wind_speed = 4
# 條件一:
condition1 = temperature < 20 # condition1 = True
# 條件二:
condition2 = wind_speed > 5 # condition2 = False
print(condition1 or condition2)
# 什么時候使用or: 要求多個條件中只要有一個條件滿足
- not 值: 值取反(True -> False; False -> True)
print(not True)
print(not False)
- not 值: 值取反(True -> False; False -> True)
age = 18
# 條件:年齡不大于18
print(age <= 18)
print(not age > 18)
否定某個條件的時候使用not
4.python中and和or會有短路現象
and的短路現象:值1 and 值2 --> 一旦確定值1的值是False,就不會再去執(zhí)行判斷值2
or的短路現象:值1 or 值2 --> 一旦值1的是True,就不會再去執(zhí)行判斷值2
def func1():
print('沒有發(fā)生短路')
False and func1()
True or func1()
- 5.賦值運算符: =, +=, -=, *=, /=, %=, //=, **=
- 賦值運算符的左邊必須是變量。賦值的時候是先算賦值符號右邊的結果,然后再將結果賦給左邊的變量
# 100 = 100 # SyntaxError: can't assign to literal
result = 10 > 100
print(result)
a. =: 單純的將=右邊的值賦給左邊
num1 = 100b. +=, -=, *=, /=, %=, //=, **=
要求左邊的變量本身必須是有值的
變量1 += 值 ----> 變量1 = 變量1+值
num2 = 100
num2 += 10 # 相等于: num2 = num2 + 10
print(num2)
num3 = 4
num3 *= 2 # 相當于: num3 = num3 * 2
print(num3)
- 6.運算符的優(yōu)先級:
- a.數學運算符 > 比較運算符 > 邏輯運算符 > 賦值運算符
- b.先計算優(yōu)先級高的,如果優(yōu)先級相等就從左往右一次運算。
- c.如果有括號,先算括號里面
- d.數學運算符中:** > *, /, % ,// > +, -
print((100 > 200) - 50* 3)