一、計算機編程語言的發展歷史
1946年在費城第一代計算機——ENIAC公諸於世,標誌現代計算機的誕生,是計算機發展史上的里程碑。
計算機終究是一種機器,在沒有人類的驅動下是無法運行的,所以需要人類對其內部進行相關的配置,才能運行,但計算機卻採用二進制進行運算和存儲,而人類通常使用十進制數進行邏輯運算,這樣使得人類不容易理解、編寫計算機程序,由此計算機編程語言也就隨着誕生了。
計算機的第一代編程語言也就是機器語言,一條機器指令規定了計算機系統的一個特定動作,使得計算機可以按照人們的意識去運行,但由於這種語言需要專業的計算機編程人員才能編寫,加上對計算機系統的兼容性問題使得二代編程語言應運而生——彙編語言,這種語言相對於機器語言更容易讓人理解和接受,但還是沒有得到廣泛的認可,其複雜性有待提高因此人們有發明了第三代編程語言高級語言也就是我們平時說的C/C++語言等編程語言。
第三代編程語言在目前爲止已經是非常成熟的編程語言了,但是呢,由於人們爲了縮短傳統的編寫-編譯-鏈接-運行過程就就創建了腳本編程語言。目前世界上主流的腳本語言有javascript、Python等。
在許多方面,高級編程語言和腳本語言之間互相交叉,二者之間沒有明確的界限。
二、Python編程語言的歷史
1、簡介
Python是一種面向對象(其實看使用者的思想,可以看我的另一篇文章:鏈接在這)的動態類型語言。
Python是腳本語言,也是弱類型語言,還是動態語言,更是面嚮對象語言。
2、歷史
1989年聖誕節期間,在阿姆斯特丹Guido(也就是Python語言創始人,頭髮比其他編程語言創始人頭髮多,這應該是Guido寫Python語言最自豪的地方吧!)爲了打發聖誕節的無趣加上向讓編程更容易讓人們學習和編寫,也就是人人碼代碼,決心開發一個新的腳本解釋程序(大佬的興趣就是不一樣)。1991年推進如開源社區,並且得到編寫、升級、擴展。
Python語言在開始時還沒有引起非常大的轟動,後來因爲因爲shell的語法有點非人性化,使得運維人員開始使用,之後跌跌撞撞到了如今21世紀,人工智能熱點出現,Python再一次進入人們的視野,到今天爲止也就是2020年2月16日,位居所有編程語言第三名。
下圖是編程語言排行
3、python的版本變遷
Python語言目前的版本有2.x和3.x兩種。
python 2:不推薦學習,18年官方2020年之後python不在免費維護2這個版本
python 3:3.5版本以上
4、Python安裝配置
1、安裝
2、環境
在安裝的時候如果選擇Add Python 3.x to PATH選項就沒必要了,但是如果沒有選中,則需要配置!
如果不會可以看這篇文章:鏈接
3、編輯器
碼代碼嘛!所以肯定要寫的啦!那拿什麼東西寫呢?一般我們用編輯器碼代碼。
下面是推薦的幾個編輯器:
1、記事本(只要是有電腦就可以用)
2、Vim(摯愛,真的很好用,強力推薦,神一樣編輯器)
3、PyCharm(專門用於Python開發的IDE,強調專業的,你懂的!!!)
4、VSCode(微軟開發,一般Windows用戶推薦使用)
5、SublimeText(輕量級的代碼編輯器)
4、測試
測試:在鍵盤是鍵入Win+R -> cmd -> python
如果出現如下圖片則爲安裝成功!
三、第一個python程序
print("Hello!World!")
這裏的print()是Python內置函數,是系統標準輸出函數
作用:將括號中的字符串數據輸出控制檯上
可以理解爲在屏幕上顯示東西。
注意:Python的語法規則是通過換行符作爲一個語句結束的標識
四、Python的註釋
1、什麼是註釋
註釋就是對編程代碼含義的讓人類可以理解的解釋,註釋跟程序無關,不會被編譯器編譯,是用來給程序員的看的,以便理解代碼的意思。
2、註釋的分類
在Python語言中(其實其他編程語言也是),有兩種註釋的方法:單行註釋和多行註釋
(1)單行註釋:
# 單行註釋
(2)多行註釋:
"""
這是多行註釋
"""
五、變量
Python是弱數據類型語言
1、什麼是變量?
就是符號來代表這個值,可以理解爲一個人的名字吧!但是這個名字是獨一無二的,它只能標識一個數據,如果給其他數據了,那麼原來的數據就沒有名字了,也就是變量名!
2、變量的定義
變量名稱 = 變量值
3、Python的變量類型不固定
由於Python的變量類型不固定,所以變量接受到了什麼值,那麼類型隨之就變成了對象的類型。
可以用內置函數type()
查看變量類型。
4、變量命名規則
(1)、變量名稱的組成必須是有效符號(大小字母、數組、_下劃線)
Python是大小寫敏感的語言
(2)、不要使用關鍵字或者保留字作爲變量名稱
關鍵字:Python
保留字:目前的版本沒有使用的單詞,但是後面的版本可能或者準備
(3)、不要以數字開頭!!!!
(4)、命名要有意義,儘量使用有意義的單詞來表示變量,下面是普遍使用的命名習慣:
駝峯法: userName classRoom
下劃線發: user_name class_room
5、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']
6、Python官方命名含義
前後置雙下劃線的變量:魔法方法,這樣的方法會在類或對象的某些事件觸發後執行
前置單下劃線的變量:表面上私有,最好是隻在內部使用,意思就是:雖然我可以被訪問,但是請把我視爲私有變量,不要隨意訪問
前置雙下劃線的變量:真正的私有屬性或者私有方法,可以使該屬性變量或方法私有,不會被派生類區繼承,僅能類自己使用,可以避免派生類和父類屬性方法名稱的衝突
後置單下劃線的變量:沒有特殊的含義,只是爲和python關鍵字區分
全是小寫的變量:小寫單詞,單詞之間用_分割,一般使用在普通變量、模塊名、包名、普通方法
每個單詞前面都大寫的變量:類名稱
全是大寫的變量:全局變量名,單詞之間用_分割 ,即類變量(在C++中使用static聲明)
前面沒有星號的變量:arg,方法傳輸的一個形參
前面只有一個星號的變量:*args,方法傳輸的未知數量的形參,多個參數組成一個元組
前面有兩個星號的變量:**kwargs,多個健值對形參,組成一個字典
以上是一小部分的,官方建議命名規則,參考於這個博文:鏈接在此
7、變量的輸入輸出和格式化
a.輸出
Python中我們使用print()
函數進行輸出,就是在屏幕上輸出的信息,輸出一個字符串類型
#例子
print("這是一個字符串") #輸出結果:這是一個字符串
b.輸入
Python中我們使用input()
函數進行輸入,就是用鍵盤在屏幕上輸入的信息,括號裏是提示用戶的字符串,返回一個字符串數據類型
#例子
str_1=("請輸入數據:")#假設輸入Hello!python!
print(str_1) #輸出結果:Hello!python!
c.格式化
在輸出時我們想用print()
中輸出非字符串的數據,但是由於print()
只能輸出字符串類型,所以我們需要格式化(可以理解爲數據的轉化)
第一種方法是使用函數在print()
外面轉化
#例子
a=10
b=str(a)
print("這是一個數字:" + b) #輸出結果:這是一個數字:10
#注意:+表示字符串拼接
第二種就是使用格式化字符串,即包含%
的字符串轉化
#例子
a=10
print("這是一個數字:%d" % (a)) #輸出結果:這是一個數字:10
第三種就是字符串的format
函數,詳細可看這篇博文:鏈接在此
#例子
a=10
print("這是一個數字:{}".format(a)) #輸出結果:這是一個數字:10
六、Python的數據類型
數據類型就是我們通常所說的整數、小數、單詞等這些數據,但是由於計算機不像人一樣聰明(之所以有人說計算機很聰明是因爲計算機是由歷代的計算機大牛的智慧結合而成,俗話說三個臭皮匠賽過諸葛亮嘛!更何況是這些臭皮匠還是大牛呢!),它不能辨別這些數據的通用性,一般嚴格區分,所以導致編程語言出現數據類型。
在Python語言中,是可以不考慮數據類型的,但是還是有數據類型之分,只是不嚴格。
在Python語言裏,分兩大類數據類型:基本數據類型,複合數據類型
基本數據類型可以理解爲漢語裏的字、詞或者英文裏的單詞。
複合數據類型可以在上句所理解的基礎上爲漢語和英文裏的句子、文章。
1、基本數據類型
以下是Python的基本數據類型:
(1)整數:int
(2)浮點數:float
(3)布爾類型:bool
(4)空:None
,表示不存在 ,和其他語言中NULL一個道理
(5)字符串:string
注意:一些數據類型之間是可以使用特定的函數相互轉換的,比如:int可以轉換成float
1、字符串一定要注意 在Python中,單引號和雙引號引的數據都是字符串,類型是str(字符串)
2、三引號在Python,也是字符串
3、字符串中的轉移符號:
\n 換行
\t 製表符
2、複合數據類型
以下是Python的複合數據類型:
(1)列表:list
(2)集合:set
(3)字典:dict
(4)元組:tuple
七、常見的運算符
具有特殊含義,能夠進行數據(數值)運輸的符號,其實就是數學裏的符號,+-*/
等符號。
1、類別
(1)算術運算符
(2)關係運算符
(3)邏輯運算符
(4)賦值運算符
(5)位運算
(6)成員運算符
(7)身份運算符
2、算術運算符
算術運算符一般是說進行數學運輸的符號。
在Python中算術運算符有如下:
(1)數學的加法運算:+
(2)數學的減法運算:-
(3)數學的乘法運算:*
(4)數學的除法運算 注意:結果可能是小數:/
(5)數學的求餘數(求模、求餘):%
(6)整除://
(7)冪次方:**
3、邏輯運算符
(1)與:and
(2)或:or
(3)非:not
4、關係運算符
(1)等於: ==
(2)不等於:!=
(3)大於: >
(4)小於:<
(5)大於等於:>=
(6)小於等於:<=
5、賦值運算符
(1)簡單的賦值運算符:=
(2)加法賦值運算符:+=
(3)減法賦值運算符:-=
(4)乘法賦值運算符:*=
(5)除法賦值運算符:/=
(6)取模賦值運算符:%=
(7)冪賦值運算符:**=
(8)取整除賦值運算符://=
注意:在Python中,=
表示賦值,==
表示數學上的等於
6、位運算
(1)按位與運算符:&
(3)按位或運算符:|
(4)按位異或運算符:^
(5)按位取反運算符:~
(6)左移動運算符:<<
(7)右移動運算符:>>
7、成員運算符
(1)如果在指定的序列中找到值返回 True,否則返回 False:in
(2)如果在指定的序列中沒有找到值返回 True,否則返回 False:not in
8、身份運算符
(1)判斷兩個標識符是不是引用自一個對象:is
(2)判斷兩個標識符是不是引用自不同對象:is not