一、Python介紹
Python 是一個(gè)高層次的結(jié)合了解釋性、編譯性、互動(dòng)性和面向?qū)ο蟮哪_本語言。
Python 的設(shè)計(jì)具有很強(qiáng)的可讀性,相比其他語言經(jīng)常使用英文關(guān)鍵字,其他語言的一些標(biāo)點(diǎn)符號(hào),它具有比其他語言更有特色語法結(jié)構(gòu)。
Python 是一種解釋型語言: 這意味著開發(fā)過程中沒有了編譯這個(gè)環(huán)節(jié)。類似于PHP和Perl語言。
Python 是交互式語言: 這意味著,您可以在一個(gè)Python提示符,直接互動(dòng)執(zhí)行寫你的程序。
Python 是面向?qū)ο笳Z言: 這意味著Python支持面向?qū)ο蟮娘L(fēng)格或代碼封裝在對(duì)象的編程技術(shù)。
Python 是初學(xué)者的語言:Python 對(duì)初級(jí)程序員而言,是一種偉大的語言,它支持廣泛的應(yīng)用程序開發(fā),從簡(jiǎn)單的文字處理到 WWW 瀏覽器再到游戲。
二、發(fā)展歷程
Python 是由 Guido van Rossum 在八十年代末和九十年代初,在荷蘭國家數(shù)學(xué)和計(jì)算機(jī)科學(xué)研究所設(shè)計(jì)出來的。
Python 本身也是由諸多其他語言發(fā)展而來的,這包括 ABC、Modula-3、C、C++、Algol-68、SmallTalk、Unix shell 和其他的腳本語言等等。
像 Perl 語言一樣,Python 源代碼同樣遵循 GPL(GNU General Public License)協(xié)議。
現(xiàn)在 Python 是由一個(gè)核心開發(fā)團(tuán)隊(duì)在維護(hù),Guido van Rossum 仍然占據(jù)著至關(guān)重要的作用
三、Python特點(diǎn)
1. 易于學(xué)習(xí):Python有相對(duì)較少的關(guān)鍵字,結(jié)構(gòu)簡(jiǎn)單,和一個(gè)明確定義的語法,學(xué)習(xí)起來更加簡(jiǎn)單。
2. 易于閱讀:Python代碼定義的更清晰。
3. 易于維護(hù):Python的成功在于它的源代碼是相當(dāng)容易維護(hù)的。
4. 一個(gè)廣泛的標(biāo)準(zhǔn)庫:Python的最大的優(yōu)勢(shì)之一是豐富的庫,跨平臺(tái)的,在UNIX,Windows和Macintosh兼容很好。
5. 互動(dòng)模式:互動(dòng)模式的支持,您可以從終端輸入執(zhí)行代碼并獲得結(jié)果的語言,互動(dòng)的測(cè)試和調(diào)試代碼片斷。
6. 可移植:基于其開放源代碼的特性,Python已經(jīng)被移植(也就是使其工作)到許多平臺(tái)。
7. 可擴(kuò)展:如果你需要一段運(yùn)行很快的關(guān)鍵代碼,或者是想要編寫一些不愿開放的算法,你可以使用C或C++完成那部分程序,然后從你的Python程序中調(diào)用。
8. 數(shù)據(jù)庫:Python提供所有主要的商業(yè)數(shù)據(jù)庫的接口。
9. GUI編程:Python支持GUI可以創(chuàng)建和移植到許多系統(tǒng)調(diào)用。
10. 可嵌入: 你可以將Python嵌入到C/C++程序,讓你的程序的用戶獲得"腳本化"
四、Pycharm及python安裝
五、第一個(gè)Python程序
1.創(chuàng)建python file
2.練習(xí)打印hello world
六、Python變量和數(shù)據(jù)類型
1. 變量的定義
在程序中,有時(shí)我們需要對(duì)2個(gè)數(shù)據(jù)進(jìn)行求和,那么該怎樣做呢?
大家類比一下現(xiàn)實(shí)生活中,比如去超市買東西,往往咱們需要一個(gè)菜籃子,用來進(jìn)行存儲(chǔ)物品,等到所有的物品都購買完成后,在收銀臺(tái)進(jìn)行結(jié)賬即可
如果在程序中,需要把2個(gè)數(shù)據(jù),或者多個(gè)數(shù)據(jù)進(jìn)行求和的話,那么就需要把這些數(shù)據(jù)先存儲(chǔ)起來,然后把它們累加起來即可
在Python中,存儲(chǔ)一個(gè)數(shù)據(jù),需要一個(gè)叫做變量的東西,如下
num1=100#num1就是一個(gè)變量,就好一個(gè)小菜籃子num2=87#num2也是一個(gè)變量result=num1+num2 #把num1和num2這兩個(gè)"菜籃子"中的數(shù)據(jù)進(jìn)行累加,然后放到 result變量中
程序就是用來處理數(shù)據(jù)的,而變量就是用來存儲(chǔ)數(shù)據(jù)的
Python3 的六個(gè)標(biāo)準(zhǔn)數(shù)據(jù)類型中:
不可變數(shù)據(jù)(3 個(gè)):Number(數(shù)字)、String(字符串)、Tuple(元組);
可變數(shù)據(jù)(3 個(gè)):List(列表)、Dictionary(字典)、Set(集合)。
2. 概念
1. 整數(shù)
Python可以處理任意大小的整數(shù),當(dāng)然包括負(fù)整數(shù),在Python程序中,整數(shù)的表示方法和數(shù)學(xué)上的寫法一模一樣,例如:1,100,-8080,0,等等。
2. 浮點(diǎn)數(shù)
浮點(diǎn)數(shù)也就是小數(shù),之所以稱為浮點(diǎn)數(shù),是因?yàn)榘凑湛茖W(xué)記數(shù)法表示時(shí),一個(gè)浮點(diǎn)數(shù)的小數(shù)點(diǎn)位置是可變的,比如,1.23x109和12.3x108是相等的。浮點(diǎn)數(shù)可以用數(shù)學(xué)寫法,如1.23,3.14,-9.01,等等。
整數(shù)和浮點(diǎn)數(shù)在計(jì)算機(jī)內(nèi)部存儲(chǔ)的方式是不同的,整數(shù)運(yùn)算永遠(yuǎn)是精確的(除法難道也是精確的?是的!),而浮點(diǎn)數(shù)運(yùn)算則可能會(huì)有四舍五入的誤差。
3. 字符串
字符串是以''或""括起來的任意文本,比如'abc',"xyz"等等。請(qǐng)注意,''或""本身只是一種表示方式,不是字符串的一部分,因此,字符串'abc'只有a,b,c這3個(gè)字符。
4. 布爾值
布爾值和布爾代數(shù)的表示完全一致,一個(gè)布爾值只有True、False兩種值,要么是True,要么是False,在Python中,可以直接用True、False表示布爾值(請(qǐng)注意大小寫),也可以通過布爾運(yùn)算計(jì)算出來。
布爾值可以用and、or和not運(yùn)算。
and運(yùn)算是與運(yùn)算,只有所有都為 True,and運(yùn)算結(jié)果才是 True。A與B true true
or運(yùn)算是或運(yùn)算,只要其中有一個(gè)為 True,or 運(yùn)算結(jié)果就是 True。
not運(yùn)算是非運(yùn)算,它是一個(gè)單目運(yùn)算符,把 True 變成 False,F(xiàn)alse 變成 True。
5. 空值
空值是Python里一個(gè)特殊的值,用None表示。None不能理解為0,因?yàn)?是有意義的,而None是一個(gè)特殊的空值。
代碼示例:
```
#整數(shù)
a=1;
#浮點(diǎn)數(shù)
b=1.1;
#字符串
c="abc";
#boolean類型
d=True;
#空值
e=None;
print(a);print(b);print(c);print(d);print(e)
a=True? ?and? ?True????# ==> True
b=True? ?and? ?False? ? # ==> False
c=False? ?and? ?True? ? # ==> False
d=False? ?and? ?False????# ==> False
e=True? ?or? ?True????# ==> True
f=True? ?or? ?False????# ==> True
g=False? ?or? ?True????# ==> True
h=False? ?or? ?False? ?# ==> False
i=not????True????# ==> False
j=not????False????# ==> True
print(a,b,c,d,e,f,g,h,i,j)
```
3.標(biāo)識(shí)符
1. 什么是標(biāo)識(shí)符?
????????開發(fā)人員在程序中自定義的一些符號(hào)和名稱
????????標(biāo)識(shí)符是自己定義的,如變量名 、函數(shù)名等
2. 標(biāo)識(shí)符的命名規(guī)則:
? ??標(biāo)識(shí)符只能由字母、下劃線“_”、數(shù)字組成。
????標(biāo)識(shí)符不能以數(shù)字開頭。
? ? 標(biāo)識(shí)符不能使用關(guān)鍵字
? ? 標(biāo)識(shí)符對(duì)大小寫敏感。
?(建議:標(biāo)識(shí)符命名應(yīng)“見名知意”)
3. python中的關(guān)鍵字:
'False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', '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']
4. 注釋:
單行注釋 /*? ? */
多行注釋 ```????```
5.標(biāo)識(shí)符的命名方法
小駝峰式命名法:函數(shù)名 ???? addName
大駝峰式命名法:類名???? AddName
4.Python中print語句
print() 方法用于打印輸出,最常見的一個(gè)函數(shù)。
語法:
print(*objects, sep=' ', end='\n', file=sys.stdout)
參數(shù):
objects -- 復(fù)數(shù),表示可以一次輸出多個(gè)對(duì)象。輸出多個(gè)對(duì)象時(shí),需要用 , 分隔。
sep -- 用來間隔多個(gè)對(duì)象,默認(rèn)值是一個(gè)空格。
end -- 用來設(shè)定以什么結(jié)尾。默認(rèn)值是換行符 \n,我們可以換成其他字符串。
file -- 要寫入的文件對(duì)象。
代碼示例:
#直接打印
print("哈哈哈哈")
#多條打印
print("哈哈哈哈","呵呵呵呵","吼吼吼吼"),
#打印+計(jì)算
print("100+200的和是:",100+200);
#設(shè)置間隔符號(hào)
print("www","runoob","com",sep=".")? # 設(shè)置間隔符? www.runoob.com
格式化輸出:
方式一:使用百分號(hào)(%)字符串格式化
print("my name is %s, and my age is %d" %(name,age))
方式二:使用format字符串格式化
位置參數(shù)
print("my name is{}, and my age is{}".format(age,name))
關(guān)鍵字參數(shù)
print("my name is {name}, and my age is {age}".format(age=18,name="jack"))
注釋:位置參數(shù)("{0}".format()),關(guān)鍵字參數(shù)("{關(guān)鍵字}".format())
5.設(shè)置換行符號(hào)
print(a,b,c,d,e,sep=";",end="\n");
6.Python中input語句
input() 用來獲取控制臺(tái)的輸入。
語法:
input([prompt])
七、運(yùn)算符
1 算術(shù)運(yùn)算符:
+? ? 加????—— 兩個(gè)對(duì)象相加
-? ? 減? ? —— 得到負(fù)數(shù)或者是一個(gè)數(shù)減去另一個(gè)數(shù)
*? ? 乘? ? —— 兩個(gè)數(shù)相乘或是返回一個(gè)被重復(fù)若干次的字符串
/? ? 除以 —— x除以y?
%? 取模? ?—— 返回除法的余數(shù)
**? ?冪? ? —— 返回x的y次冪
//? ?取整除? ?—— 向下取接近商的整數(shù)
2.邏輯運(yùn)算符:
and ——? ?x? and? y? ? ?布爾“與”,如果x為False,x? and? y? 返回x的值,否則返回y的計(jì)算值
or? ?——? ?x? or? y? ? 布爾“或”,如果x是True,它返回x的值,否則它返回y的計(jì)算值
not? ?——? ? not? x? ? 布爾“非”,如果x為True,返回False。如果x為False,它返回True
3.比較運(yùn)算符
==? ? 等于,比較對(duì)象是否相等
!=? ? 不等于,比較兩個(gè)對(duì)象是否不相等
>? ? 大于,返回x是否大于y
<? ? 小于,返回x是否小于y,所以比較運(yùn)算符返回1表示真,返回0表示假。這分別與特殊的變量True和False等價(jià),注意,這些變量名的大寫
>=? ? 大于等于,返回x是否大于等于y
<=? ? 小于等于,返回x是否小于等于y
4.賦值運(yùn)算符:
=? ? 簡(jiǎn)單的賦值運(yùn)算符
+=? ? 加法賦值運(yùn)算符
- =? ? 減法賦值運(yùn)算符
*=? ? 乘法賦值運(yùn)算符
/=? ? 除法賦值運(yùn)算符
%=? ? 取模賦值運(yùn)算符
**=? ? 冪賦值運(yùn)算符
//=? ? 取整除賦值運(yùn)算符
:=? ? 海象運(yùn)算符