(课程学习笔记)Python初级入门精讲
Python語言介紹
1.1 Python語言介紹
命名:原本是一個戲劇團的名稱Python
1.2 Python能做什么
系統運維,目前在運維領域Python語言最牛逼;
網絡編程(爬蟲:從網上扒數據然后分類,服務器編程,搜索引擎);
科學計算;
教學;
AI、圖像、游戲
1.3 Python特點
優點:純面向對象、免費、移植性能好、可混合編程(膠水語言)、開發效率高
缺點:運行速度比較慢
1.4 Python版本問題
Python 2.x
Python 3.x
教學版本 >= 3.5
環境搭建
所需軟件:
1.Python解釋器(Python官網:www.python.org)
2.包安裝器 pip,conda
3.Jupyter Notebook(www.jupyter.org):一個原本用于科學計算的python交互環境,支持Markdown
4.IDE(www.jetbrains.com):PyCharm 集成開發環境
5.虛擬環境(https://www.anaconda.com):一個虛擬出來的python解釋器和相應的編程環境,即一個沙箱環境,防止多個項目的環境項目污染 Anaconda
平臺:
windows環境安裝:
1.cmd-python 查看是否安裝成功python解釋器
2.anaconda 程序-所有程序-anaconda3 能運行有就說明安裝成功
3.PyCharm 如果PyCharm能運行,說明成功
linux環境安裝
1.虛擬環境模擬軟件:VMware
2.安裝CentOS
3.安裝python
MaxOs環境安裝:
第一個Python程序
1.編寫
-工具,用什么進行輸入:記事本
-后綴:py,非必須
-格式:python是嚴格格式代碼
2.運行
-命令行下運行:cmd+r
-交互環境下一行一行輸入運行
3.代碼組成
-導入第三方工具包
-程序代碼:語句、函數、類、表達式、注釋
Python語言基礎
1.變量命名規則
1.1.變量名必須以字母、下劃線、數字、漢字(不推薦)開頭,不能使用python關鍵字和保留字
1.2.區分大小寫 you不等于YOU
2.變量推薦命名法則
2.1.使用英文單詞或者縮寫
2.2.漢字、拼音不推薦
2.3.駝峰命名法:多個單詞構成,除第一個其他首字母大寫,例如myAge,myFirstName
2.4.大駝峰:所有單詞首字母大寫,例如MyAge
2.5.posix命名法:由單詞構成,全部小寫,單詞間下劃線連接,例如:my_age
3.Python基礎數據類型
3.1數字類型
常量數字:直接表示出來的數字就是常量數
數字類型 | 數字舉例
十進制 1,123,-21
浮點數 -0.988,2.21,4e-12,4.32e23
復數 3+56j,4.5+7.83j
二進制(0b開頭) 0b1001
十六進制(0x開頭) 0xfec
八進制(0o開頭) 0o432
注:八進制在python2.x中可以以“0”或“0o”開頭,python3.x中以"0o"開頭
整數:通常指不帶有小數部分的數,包括自然數,0,負數,在pyton中表示任意大的數字。例如23,-9,0
整數的進制:
十進制:逢10進1
二進制:逢2進1,由0,1組成,python中的二進制常量以"0b"開頭
八進制:逢8進1,由0-7的數字組成,python中的二進制常量以"0o"開頭
十六進制:逢16進1,由0-9,A,B,C,D,E,F表示0-15的數字,python中的二進制常量以"0x"開頭
不同進制之間的轉換:
十進制轉二進制:bin()
十進制轉八進制:oct()
十進制轉十六進制:hex()
浮點數:即我們日常理解的小數。
表現的形式:
常見的小數,1.0,1.2,3.0
科學計數法:小數乘以10為底的指數,指數可以為負數 3.2222*10^5
復數:由實部和虛部組成,中間由‘+‘號鏈接,虛部后跟‘j’表示。
例如:3+4j
3.2 字符串類型
3.2.1 什么是字符串?
–即表示文本的一種形式。
例如:“我愛北京天安門。”
–排列有序
–在非注釋中,凡是用引號引起來的部分是字符串
3.2.2 引號類型:
單引號:‘hello’
雙引號:“hello”
三單引號:’’‘hello’’’
三雙引號:""“hello”""
3.2.3 四種引號的區別
單引號和雙引號沒有區別
三單引號和三雙引號沒有區別
三引號被常用來表示多行字符串信息,或者在程序函數內部函數整體開頭表示函數說明
–字符串中出現引號,需要使用轉義字符或者其他的形式的引號
例如:想表示 let’s go
“let’s go” 或者 ‘’‘let’s go’’’ 或者""“let’s go”"" 或者 ‘let’s go’
3.2.4 常用轉義字符:
單引號:’ 雙引號:" 響鈴:\a 反斜杠:\ 換行:\n 水平制表符:\t
3.2.5 String類型的API
API:applicationprogramminginterface 引用程序接口,我們只需要來調用就行了
1.一般函數:
startswith/endswith:判斷是否以特定XXX字符串開頭或者結尾
count:計算一個字符在一個字符串中出現的次數
find:查找字符串中子字符串出現的位置,并返回第一個查找的位置,返回結果大于等于0表示查到的位置,返回結果為-1表示查不到
2.判斷字符串:
其一定判斷功能的字符串
islower/isupper:判斷字符串是小寫還是大寫
isdigit:判斷字符串是否全部由數字字符組成
isalpha:判斷字符串是否全部由字母組成
3.操作類函數:
lower/upper:轉換大小寫
strip/lstrip/rstrip:去掉空格/去掉左邊空格/去掉右邊空格
swapcase:字符串中字符交換大小寫
3.2.6 字符串的格式化
把字符串按照一定的格式進行打印或者填充
格式化的分類:
1.使用%進行格式化
占位符的種類:
%s表示簡單的字符串
%r表示字符串
%c表示整數轉換為單個字符
%d表示一個整數
%u表示無符號整數
%o表示八進制
%x表示十六進制,字母為小寫x
%X表示十六進制,字母為大寫X
%e:浮點數,例如2.87e+12
%E:浮點數,例如2.87E+12
%.xf表示浮點小數,x表示幾位小數
格式字符千出現整數表示此占位符所占位置的寬度
格式字符前面出現+表示右對齊,-表示左對齊
例如:“my name is %s,my age is %d,my height is %.2f” %(“xulutao”,25,175.234)
2.使用format函數
3.2.7 布爾變量
表示真假 true/false
*如果布爾值作為數字參與運算,所有非0的數字都為true,但是,反之如果true作為數字參與運算則為1,false為0
例如:false+8=8 true+8=9
if 32: #if后面只能跟布爾值,所以這里32作為布爾值為true,所有非0的數字都是true
print(“nihao”)
3.2.8 None
是一個特殊的常量,不表示任何類型,通常用來占位,或者變量綁定解除,None與任何其他類型進行比較永遠返回false
作用:-占位
-變量綁定解除
例子:a=33 print(a) a= None print(a)
4.運算符
4.1算數運算符
+,-,,/,%,//
- : 加法
- : 減法
/ :除法
在python3中兩數相除,結果為浮點數
例:5/2=2.5 4/2=2.0 4/3=1.3333333333333333
// :地板除
兩數相除,得到的結果取整,但是不意味著得到的結果一定是整數,
如兩整數正好結果為整數,則得到整數,否則出現浮點數
例:4//2 = 2 4.0//2 = 2.0 25//3 = 8 25.0//3 = 8.0
% :表示取余
例:5/3 商1余2
:表示冪指數
例:42 表示4的2次方 53表示5的3次方
4.2算數運算符優先級
三個等級:1.* 2.,/,%,// 3.+,-
有括號先計算括號內
4.3賦值運算符
=,+=,-=,=,/=,%=,**=,//=
a+=b就是a=a+b
a-=b就是a=a-b
為python變量提供賦值運算功能的符號
python中允許批量賦值,左邊的數量必須和右邊一樣,用逗號分開
例:a,b,c = 10,20,30
python允許兩個變量進行交換
例:a=100,b=200 a,b = b,a
4.4比較運算符
返回的結果為布爾值
<,>,>=,<=,==,!=
在python3中,不等于符號只有一個!=
4.5邏輯運算符
and:邏輯與 or:邏輯或 not:邏輯非
and 邏輯與,如果不能理解,可以把true看作1,false看作0,and就是乘號
例:True and False = False
or 邏輯或,如果不能理解,可以把true看作1,false看作0,or就是加號
例:False or True = True
not 邏輯非,如果不能理解,可以把true看作1,false看作0,not看作取反
例:not True = False not False = True not 3 > 4 = True
4.6特殊運算符
is,is not ,del
is:判斷兩個變量,對象是否為同一個
兩個對象/變量是否是is的依據是,id值是否一樣
例:a=7897 b=7897 a is b = False
在python中一些初級的,常用的對象,被放入內存中,供大家使用不用再創建,于是出現這樣的情況
例:a=1 b=1 a is b = True
is not:跟is操作符正好相反
a is not b
del:用于刪除變量,同時解除與對象的關聯,如果可能則釋放對象
例:b = 1
print(b)
del b
print(b) #報錯,b沒有定義
1
2
3
4
5
6
7
8
4.7基本輸入輸出
input:從標準輸入設備上讀取一個字符串,末尾的換行符會被自動刪除
注意:input返回值永遠是一個字符串
例:input(“請輸入您的年齡,按回車鍵結束:”)
print:輸出/打印信息到標準輸出設備
age = input(“請輸入您的年齡,按回車鍵結束:”)
print(“您的年齡為%s” % age)
4.8程序結構
程序可以由三種結構組成全部:程序結構=順序+分支+循環
4.8.1 if語句
語法:
if (條件表達式) :
程序處理模塊
例子:score = 89
if ( score >= 90)
print(“A”)
if( score >=80 and score <90 )
print(“B”)
python中用縮進來表示程序結構或代碼的層級關系
注意:縮進可以用tab鍵或者空格,一個tab表示幾個空格,在python2中只要空格數相同tab和空格鍵可以混用,但是在python3在不可以混用,推薦使用tab鍵
#pass語句:占位符號,不起任何作用,不執行任何語句
例:if(3>0) :
pass
4.8.2 if else語句
語法:
例:輸入成績,大于等于90輸出A,否則判斷是否大于等于60,大于輸出及格否則輸出不及格。
score = input(“請輸入您的成績,按回車鍵結束:”)
#input返回值都是str,需要轉換為整數類型
score = int(score)
if (score >=90) :
print(“你的成績為A”)
else :
if (score >= 60) :
print(“你的成績為及格”)
else :
print(“你的成績為不及格”)
4.8.3 三元操作符
元:操作數的意思,所謂三元,就是一個操作符帶動三個操作數一起運算
語法: x if 條件 else y
例:如果1<3 返回43否則返回34 a = 43 if 1 < 3 else 34
4.8.4 循環預備知識
list
列表:用來盛放/表示一串性質相同或者相似的數據,這些數據組成有序的一種排列方式
#python中一個列表可以盛放:數字、字符串、列表、或者其他復雜結構
#列表定義
1.直接表示列表,需要用中括號括起來,中間用逗號隔開
L1 = [1,2,3,4,5
#range:一個函數,產生一個有規律的由數字組成的列表,使用時包含三個參數:range(start,end,step)
start:開始數字,生成的列表里的第一個數字,默認為0
end:結束數字,不包含在生成的列表里
step:步長,即每次增加多少,默認為1
4.8.5 For循環
#for循環特點:有一個清晰的循環次數,或者清晰的循環結束標志
#語法:for i in xxx :
循環語句模塊
例:對于在L1中的每一個元素,我們給這個元素臨時用變量idx表示,執行打印操作
L1 = [1,2,3,4,5,6,7]
for idx in L1 :
print(idx)
L2 = range(1,8)
for idx in L2 :
print(idx)
例:利用range函數和for循環對1-50的數求和
mySum = 0
L = range(1,51)
for idx in L :
mySum+=idx;
print(mySum)
4.8.6 while循環
#while循環特點:當滿足一定條件時才循環,具體循環多少次數沒有具體規定或者規劃
#語法:while(循環條件) :
循環體
例:銀行利息,本金10000,年息7%,多少年后本金會超過13000
year = 0
money = 13000
while(money<=13000):
money*=1.07
year+=1
print("%d年后會超過" % year)
例:1-50求和,while必須用
sum=0
n=1
while(n<51):
sum+=n
n+=1
print(sum)
4.8.7 break語句
無條件終止循環并跳出循環體,對于多重循環,break語句只跳出離他最近的一次循環
例:在50到100之間尋找第一個可以被整9除的數。
for idx in range(50,101) :
if idx%9==0:
print(idx)
break
4.8.7 continue語句
跳過這一輪循環,繼續下一輪循環
例:累加求和,1-100累加求和,當數字為奇數時才累加。
suum = 0
for idx in range(1,101) :
if idx %2 == 0:
continue
suum+=idx
print(suum)
4.8.8 函數
#幾個問題:
函數名/函數定義
參數
返回值
#函數定義:
def funcName() :
print(“這是我的第一個函數”)
#函數的調用:調用直接用函數的名稱,有參數輸入參數,沒參數用空括號
funcName()
4.8.9 函數返回值return
函數的類型一般就是返回值的類型,不返回數據可以沒有return,但不建議去掉
如果不返回值,則自動默認返回None
函數可以返回復雜類型,亦可以返回多個值
例:
#返回多個值,用逗號隔開;多個返回值函數只能是一個tuple類型或者相同數量變量
def func(one,two)
one+=100
two+=100
three=one+two
return one,two,three
#對多個返回值的調用,如果返回值放入一個變量中,則默認此變量為tuple類型,即多個返回值自動打包為tuple
res = func(1,2)
print(res)
#對多個返回值的調用,返回值放入多個變量中
r1,r2,r3 = func(1,2)
print(r1,r2,r3)
4.9 參數
在函數中,用來占位具有一定表示意義的變量名
分類:
形參:形式參數的名稱 ,給實參用來占位
實參:實際參數的名稱 ,實參用來參與具體運算
關鍵字參數:對參數進行別名設置,同時使參數具有了默認值形參用來定義
默認參數:參數在定義時帶默認值
序列、字典參數:序列參數是指參數作為一個列表傳入,字典參數是指參數作為一個字典傳入
星號元組參數:允許
例:
#形參
def func01(name)
print(“My name is %s” % name )
#實參,在調用的時候它有了具體的含義
func01(“Tom”)
#關鍵字參數:忽略參數的順序,調用時顯示的效果一樣
func01(name=“Tom”,food=“fish”)
func01(food=“fish”,name=“Tom”)
#默認參數
默認參數的定義:需要使用關鍵字參數,語法格式為arg=xxx,默認參數必須放在參數列表后面,且默認參數后不得再有普通參數
先定義一個函數,在需要默認參數的后面加上值,且后面不能再有普通參數
def func02(name,score=60) :
if(score >= 60):
print(“恭喜%s考了%d,不用重考” % (name,score))
else:
print(“很遺憾%s只考了%d,需要重考” %(name,score))
#序列、字典參數
例:
#序列參數怎么傳入呢?
##定義一個函數
def myFunc(name1,name2,name3)
print(n1+n2+n3)
##把實參作為列表傳入,序列的長度必須和形參個數相同
pl=[“one”,“two”,“three”]
##怎么調用,則需要特俗標識符"*“表示出來
myFunc1(*pl)
#字典參數怎么傳入呢?
##嘗試把所有參數放入一個字典,字典的長度必須和形參個數相同,字典的鍵必須對應形參,鍵作為字符串類型
d = {“a”:“tom”,“b”:“jerry”,“c”:“ketty”}
##怎么調用呢,則需要特俗標識符”**"表示出來
myFunc1(**d)
#星號元組參數
例:
##先定義星號元組參數函數
def func03(*arg) :
print(arg)
##怎么調用,如果不輸入參數則函數認為你給了一個空列表,如果輸入參數則函數自動打包把實參放入列表然后傳入
func03(“tom”,“tim”,“jerry”,“jay”)
5.0 函數文檔
函數文檔是在函數開頭起一定說明性的一段文字,通過查看_doc_屬性可以查看函數定義的doc內容
例:
def func1(one) :
‘’‘么有實際意義,只是顯示文檔的位置
參數只有一個叫做one
哈哈哈哈,不用每一行都要#
‘’’
print(“The first func1”)
return one
#如何查看函數的文檔內容呢
func1.doc
總結
以上是生活随笔為你收集整理的(课程学习笔记)Python初级入门精讲的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: (课程学习笔记)Python基础学习
- 下一篇: 自定义安装python,退格,方向键无法