Python第一天--基礎知識
1、互動式直譯器
命令列輸入python,進入互動式直譯器
2、演算法是什麼
演算法就是流程,或者說是說明書,詳細的描述瞭如何完成一件事
比如攤煎餅:
- 先把麵攤開 ,在加個雞蛋和辣條
- 如果要香菜就加一些香菜
- 30秒檢查一次,直到攤熟
攤煎餅說明書都演算法都是由原料(物件)和操作說明(語句)組成的,上面的面、雞蛋、辣條就是原料,操作說明包括攤開面,加雞蛋等
3、數和表示式
表示式為程式的一部分,結果是一個值
互動式直譯器可當做強大的計算器
除法運算的結果是浮點數(float)
如果要丟棄小數部分,那麼使用“//”地板除
除法的原理,對於整除運算,它結果是向下取整,所以結果為複數情況時,結果會離0更遠
取模運算,結果是整除後餘下的部分
冪運算,乘方
乘方的優先順序比單目運算子高,-3**2等同於-(3**2)
4、十六進位制、八進位制和二進位制
十六進位制的開頭用 “0x” 表示
八進位制開頭用 “0o” 表示
二進位制開頭用 “0b” 表示
5、變數
變數就是指向特定值的名稱
賦值:
注意:變數使用前必須賦值
變數名(識別符號)只能由數字、字元下劃線組成,且不能用數字開頭
5、語句
語句是讓計算機執行特定操作的指令
以上的結果相同,因為互動式直譯器總是將表示式的值打印出來
理解:表示式是一些東西,語句是做一些事情
6、獲取使用者輸入
使用 input 函式接受使用者輸入
如下程式碼,結果是為什麼是23?因為Python3的input將所有接收的內容都處理成字串,這樣就明白了,x+y實際就是拼接了字串
x = input("x:") y = input("y:") print(x+y) # x:2 # y:3 # 23
正確的計算結果,將x和y轉換成整數後再計算
x = input("x:") y = input("y:") print(int(x)+int(y)) # x:2 # y:3 # 5
7、函式
函式就相當於小程式,用來執行特定的操作,python中提供了很多函式,我們將其提供的稱作內建函式
比如乘方函式和print函式
x = 3 y = 2 print(pow(x,y)) # 9
pow(x,y),稱為函式呼叫向他提供實參,他返回一個值,所以函式也是表示式
計算絕對值
print(abs(-9)) # 9
round將浮點數取整為與之最接近的整數
print(round(1.23)) # 1 print(round(1.98)) # 2 print(round(5/3)) # 2
8、模組
模組可以看做是擴充套件,Python通過匯入模組可以擴充套件功能,匯入模組使用import命令
匯入math模組,通過module.function的方式使用模組中的函式
floor函式:捨棄掉小數部分
import math print(math.floor(32.9)) # 32
ceil函式:向上取整,與floor相反
import math print(math.ceil(3.192)) # 4
匯入模組還可以使用 from module import function形式,可以在呼叫函式時不指定模組名
sqrt函式:平方根
from math import sqrt print(sqrt(9)) # 3.0
9、camth和複數
向sqrt提供負數引數的情況
from math import sqrt print(sqrt(-9)) # print(sqrt(-9)) # 3.0 # ValueError: math domain error
有些平臺的結果是:nan,nan由特殊意義,表示非數值(not a number)
sqrt(-1) # nan
複數是由實數部分和虛數部分組成的,python標準庫提供了專門用於處理複數的模組:cmath
print((1+3j)) # (1+3j) print((1+3j) * (2+3j)) # (-7+9j)
負數的平方根是虛數,為了避免sqrt名稱衝突,使用import來匯入cmath模組
虛數都是由j結尾
import cmath print(cmath.sqrt(-3)) # 1.7320508075688772j