俗話說的好,千里之行始於足下。無論做什麼事情,基礎都是最重要的,當你以為自己「精通」某語言的時候,有沒有問過自己:
「能不能把這些知識,用最簡單的話說出來,讓不懂的人也能聽明白?」
當你真正精通某語言的時候,我相信你一定能做到。如果做不到,那就需要往下看,再學習一下基礎。
為了幫助大家徹底理解Python,小編在線針對各大知識點進行了圖片化和文字化顯示。
涵蓋了大量文字概念和代碼的邏輯處理思路以及對應案例,可以直接通過文字概念和圖片的邏輯處理流程,來輔助自己對知識的消化和吸收。
本文目錄
認識Python
Python應用場景
Python基礎語法
一、認識Python
Python 是一種電腦程式設計語言。是一種動態的、面向對象的腳本語言,最初被設計用於編寫自動化腳本(shell),隨著版本的不斷更新和語言新功能的添加,越來越多被用於獨立的、大型項目的開發。
Python 的創始人為荷蘭人吉多·范羅蘇姆(Guido van Rossum)。1989 年聖誕節期間,在阿姆斯特丹,Guido 為了打發聖誕節的無趣,決心開發一個新的腳本解釋程序,作為ABC語言的一種繼承。
ABC 是由 Guido 參加設計的一種教學語言。
就 Guido 本人看來,ABC 這種語言非常優美和強大,是專門為非專業程式設計師設計的。
但是 ABC 語言並沒有成功,究其原因,Guido 認為是其非開放造成的。
Guido 決心在 Python 中避免這一錯誤。同時,他還想實現在 ABC 中閃現過但未曾實現的東西。
就這樣,Python 在 Guido 手中誕生了。
可以說,Python 是從 ABC 發展起來。Python 已經成為最受歡迎的程序設計語言之一。
自從 2004 年以後,python 的使用率呈線性增長。Python2 於 2000 年 10 月 16 日發布,穩定版本是 Python2.7 。
Python3 於 2008年 12 月 3 日發布,不完全兼容Python2。2011年1月,它被 TIOBE 程式語言排行榜評為 2010 年度語言。
由於 Python 語言的簡潔性、易讀性以及可擴展性,在國外用 Python 做科學計算的研究機構日益增多,一些知名大學已經採用 Python 來教授程序設計課程。
例如卡耐基梅隆大學的編程基礎、麻省理工學院的計算機科學及編程導論就使用 Python 語言講授。
眾多開源的科學計算軟體包都提供了 Python 的調用接口,例如著名的計算機視覺庫OpenCV 、三維可視化庫 VTK 、醫學圖像處理 庫 ITK 。
而 Python 專用的科學計算擴展庫就更多了,如下面3個十分經典的科學計算擴展庫:NumPy、SciPy 和 matplotlib,它們分別為 Python提供了快速數組處理、數值運算以及繪圖功能。
因此 Python 語言及其眾多的擴展庫所構成的開發環境十分適合工程技術、科研人員處理實驗數據、製作圖表,甚至開發科學計算應用程式。
二、Python應用場景
1. Web應用開發
Python經常被用於Web開發。比如,通過mod_wsgi模塊,Apache可以運行用Python編寫的Web程序。
Python定義了WSGI標準應用接口來協調Http伺服器與基於Python的Web程序之間的通信。一些Web框架,如Django,TurboGears,web2py,Zope等,可以讓程式設計師輕鬆地開發和管理複雜的Web程序。
2. 作業系統管理、伺服器運維的自動化腳本
在很多作業系統里,Python是標準的系統組件。大多數Linux發行版以及NetBSD、OpenBSD和Mac OS X都集成了Python,可以在終端下直接運行Python。
有一些Linux發行版的安裝器使用Python語言編寫,比如Ubuntu的Ubiquity安裝器,Red Hat Linux和Fedora的Anaconda安裝器。
Gentoo Linux使用Python來編寫它的Portage包管理系統。Python標準庫包含了多個調用作業系統功能的庫。
通過pywin32這個第三方軟體包,Python能夠訪問Windows的COM服務及其它Windows API。
使用IronPython,Python程序能夠直接調用.Net Framework。一般說來,Python編寫的系統管理腳本在可讀性、性能、代碼重用度、擴展性幾方面都優於普通的shell腳本。
3. 網絡爬蟲
Python有大量的HTTP請求處理庫和HTML解析庫,並且有成熟高效的爬蟲框架Scrapy和分布式解決方案scrapy-redis,在爬蟲的應用方面非常廣泛。
4. 科學計算
NumPy、SciPy、Pandas、Matplotlib可以讓Python程式設計師編寫科學計算程序。
5. 桌面軟體
PyQt、PySide、wxPython、PyGTK是Python快速開發桌面應用程式的利器。
6. 伺服器軟體(網絡軟體)
Python對於各種網絡協議的支持很完善,因此經常被用於編寫伺服器軟體、網絡爬蟲。
第三方庫Twisted支持異步網絡編程和多數標準的網絡協議(包含客戶端和伺服器),並且提供了多種工具,被廣泛用於編寫高性能的伺服器軟體。
7. 遊戲
很多遊戲使用C++編寫圖形顯示等高性能模塊,而使用Python或者Lua編寫遊戲的邏輯、伺服器。
相較於Python,Lua的功能更簡單、體積更小;而Python則支持更多的特性和數據類型。
8. 構思實現,產品早期原型和疊代
Google、NASA、Facebook都在內部大量地使用Python。
三、Python基礎知識
1. 語法基礎:注釋
在程序中對某些代碼進行標註說明,這就是注釋的作用,能夠大大增強程序的可讀性。python 常用單行注釋是 # ,常用多行注釋是三對單引號 ''' '''
# 這是一個單行注釋
# print("七月你好,我是八月.") 此行代碼不執行顯示.
# 快捷鍵: ctrl + / 快速設置注釋 和 快速取消注釋
'''
這是一個多行注釋
該範圍內的代碼不會執行顯示
'''
2. 語法基礎:數據類型
3. 語法基礎:關鍵字和標識符
關鍵字
python 一些具有特殊功能的標識符,這就是所謂的關鍵字。關鍵字,是 python 已經使用的了,所以不允許開發者自己定義和關鍵字相同的名字的標識符
那麼 python 中關鍵字都有哪些呢?
['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']
那麼咱們如何去查詢 python 中有哪些關鍵字呢?
# 在python中若想查詢python中有哪些關鍵字可以先導入keyword模塊
import keyword #導入關鍵字模塊
print(keyword.kwlist) #查詢所有關鍵字
實際操作
溫馨提示:咱們在起變量名或者文件名時不能使用這些關鍵字名字喲,否則會報錯.拋出異常~請大家注意喲。
標識符
祖國的花朵(開發人員)在程序中自定義的一些符號和名稱。標示符是咱們自己定義的,如變量名、函數名、類名等。
標識符規則
定義這些標識符也有一定的規則:標識符由字母下劃線和數字組成,但是不能以數字開頭,可以使用下劃線或字母開頭,注意在 python 中,標識符是嚴格區分大小寫的喲。 變量 Andy 不等於 變量 andy 這是兩個變量。
標識符命名規則
命名規則,可以簡單的理解為,咱們在起名字的時候是需要遵守相關規則的.主要是為了讓別人一看就明白是什麼意思,做什麼用的.可以提高代碼可讀性。比如:名字 就定義為 name , 定義學生用 student。
駝峰命名法
同時呢,在需要多個單詞進行組合時,咱們使用駝峰命名法:
小駝峰式命名法: 第一個單詞以小寫字母開始;第二個單詞的首字母大寫,例如:myName、aDog
大駝峰式命名法: 每一個單字的首字母都採用大寫字母,例如:FirstName、LastName。不過在程式設計師中還有一種命名法比較流行,就是用下劃線「_」來連接所有的單詞,比如send_buf
名字和對象之間關係
我們可以用 = 等號,建立立定義的變量名字和對象之間的引用關係,也可以用使用 del 來解除這種引用關係。
# 舉個例子
name = '天下第一帥' # 我將 天下第一帥 這個字符串賦值給了 name 這個變量名,可以理解為,下次我通過 name 名字可以聯繫到 天下第一帥 這個人.
實際操作
# del 解除引用關係
age = 17 # 永遠17歲
del age # del 是 delete 的縮寫,此行代碼表示刪除 age 和 17 之間的引用關係
print(age) # 因為已經刪除引用關係,所以訪問不到 17 這個數據,則拋出異常
實際操作
名字空間
當我們在定義了一些變量名,函數名,類名之後,會有一個空間來收納這些名字和它們所對應的數據類型和數據內容。
# 舉個栗子
height = '190CM' # 小編的理想身高.但是現實很殘酷.
def func1():
pass
class Fun():
pass
實際操作
使用 %whos 查看名字空間,我們也可以使用 %reset 來清空這個空間,清空之後,我們就需要重新執行一次定義的過程,才能重新存儲在名字空間內。
實際操作
4. 語法基礎:輸出
普通的輸出
python中的輸出
用 print() 在括號中加上字符串,就可以向螢幕上輸出指定的文字。比如輸出 '李鐵柱',用代碼實現如下:
name = '李鐵柱'
print(name)
運行結果
print()也可以列印整數,或者計算結果
# 舉個例子
print(300)
print(100 + 200)
實際操作
因此,我們可以把計算100 + 200 的結果列印得更漂亮一點:
print('100 + 200 = ', 100 + 200)
實際操作
注意,對於100 + 200,Python 解釋器自動計算出結果 300,但是,'100 + 200 =' 是字符串而非數學公式,Python 把它視為字符串,直接進行列印輸出。
5. 語法基礎:格式化輸出
格式化操作的目的,比如說有下列代碼:
print('大家好,我叫 李鐵柱,我今年 24 歲')
print('大家好,我叫 候德柱,我今年 25 歲')
print('大家好,我叫 候不柱,我今年 26 歲')
大家仔細觀察一下,能夠看到,我在 print 輸出自我介紹的時候,用了很多的相同字體,就只有一些不同的欄位,那麼咱們能否簡化一下程序呢?
age = 24
print("我今年%d歲" % age)
age += 25
print("我今年%d歲" % age)
age += 26
print("我今年%d歲" % age)
實際操作
在程序中,看到了 % 這樣的操作符,這就是 Python 中格式化輸出。
age = 18
name = "小嶽嶽"
print("我的姓名是%s, 年齡是%d" % (name, age))
運行結果
在這裡咱們一次使用了兩個格式化符號,分別是:%s 和 %d。
%s:表示格式化輸出字符串
%d:表示格式化輸出十進位整數
除了這兩個格式化輸出字符還有很多,往下看。
常用的格式化符號
6. 語法基礎:輸入
現在,你已經可以用 print() 輸出你想要的結果了。但是,如果要讓用戶從電腦輸入一些字符怎麼辦?Python 提供了一個 input(),可以讓用戶輸入字符串,並存放到一個變量里。比如輸入用戶的名字:
name = input() # input()
當你輸入name = input()並按下回車後,Python交互式命令行就在等待你的輸入了。這時,你可以輸入任意字符,然後按回車後完成輸入。
輸入完成後,不會有任何提示,Python 交互式命令行又回到就緒狀態了。那我們剛才輸入的內容到哪去了?答案是存放到 name 變量里了。可以直接輸入 name 查看變量內容:
7. 語法基礎:運算符
標準操作符
python 同大多數語言一樣,也有自己的操作符,分別用來應對不同的工作內容。今天要講的是 Python 中最常用的幾種標準操作符:算術運算符、賦值運算符、比較運算符、邏輯運算符。
算數運算符
注意:混合運算時,優先級順序為: ** 高於 * / % // 高於 + - ,為了避免歧義,建議使用 () 來處理運算符優先級。並且,不同類型的數字在進行混合運算時,整數將會轉換成浮點數進行運算。
實際操作
a = 10
b = 20
print(a+b)
print(a-b)
print(a*b)
print(a/b)
賦值運算符
實際操作
a = 10 # 單個賦值
b = 20
c,d,e = 30,40,50 # 多個賦值 c = 30 , d = 40 , e = 50
print(a,b,c,d,e)
復合賦值運算符
實際操作
c = 40
a = 20
# print(c += a) # 直接 print() 是無法輸出結果的喲
c += a
print(c)
c -= a
print(c)
c *= a
print(c)
c /= a
print(c)
c %= a
print(c)
8. 語法基礎:常用的數據類型轉換
數據類型轉換
有時候,我們需要對數據內置的類型進行轉換,數據類型的轉換,你只需要將數據類型作為函數名即可。
以下幾個內置的函數可以執行數據類型之間的轉換。這些函數返回一個新的對象,表示轉換的值。
類型轉換
# 給小夥伴們舉幾個例子
# int(): 將數據轉換為 int 類型
str1 = "10"
num1 = int(str1)
print(int)
# int() 處理浮點數,只留下整數部分,捨棄小數部分(並不是四捨五入操作)
num2 = int(3.74)
print(num2)
# float() 將數據轉化為浮點數
str2 = "3.14"
f1 = float(str2)
print(type(f1))
# str() : 轉換為 字符串類型
num1 = 10
f1 = 3.14
print(type(str(num1)))
# eval(): 將字符串形式的數據,轉換為原本的類型
str1 = "3.14"
print(type(eval(str1)))
操作結果
在職場競爭激烈的今天,唯有技術才是我們的硬實力。小編今天給大家分享一套不錯的python400集視頻教程+pdf電子書籍,視頻教程裡面包含入門進階,源碼,實戰項目等等,,不管你是正在學習中,還是想要學習的,如果你不想錯過Python這麼好的工具,又擔心自學遇到問題無處解決,通通來吧 肯定不會讓你失望。
。。。。。。。獲取方式:
1.轉發+關注
2.然後私信小編「Python」即可免費帶走哦!