一、Python介紹
Python 是一個高層次的結(jié)合了解釋性谭溉、編譯性墙懂、互動性和面向?qū)ο蟮哪_本語言。
Python 的設計具有很強的可讀性损搬,相比其他語言經(jīng)常使用英文關(guān)鍵字,其他語言的一些標點符號巧勤,它具有比其他語言更有特色語法結(jié)構(gòu)。
Python 是一種解釋型語言: 這意味著開發(fā)過程中沒有了編譯這個環(huán)節(jié)沽瞭。類似于PHP和Perl語言。
Python 是交互式語言: 這意味著驹溃,您可以在一個Python提示符,直接互動執(zhí)行寫你的程序豌鹤。
Python 是面向?qū)ο笳Z言: 這意味著Python支持面向?qū)ο蟮娘L格或代碼封裝在對象的編程技術(shù)。
Python 是初學者的語言:Python 對初級程序員而言布疙,是一種偉大的語言愿卸,它支持廣泛的應用程序開發(fā)灵临,從簡單的文字處理到 WWW 瀏覽器再到游戲趴荸。
二、發(fā)展歷程
Python 是由 Guido van Rossum 在八十年代末和九十年代初赊舶,在荷蘭國家數(shù)學和計算機科學研究所設計出來的。
Python 本身也是由諸多其他語言發(fā)展而來的,這包括 ABC笼平、Modula-3、C寓调、C++、Algol-68、SmallTalk滋捶、Unix shell 和其他的腳本語言等等。
像 Perl 語言一樣重窟,Python 源代碼同樣遵循 GPL(GNU General Public License)協(xié)議惧财。
現(xiàn)在 Python 是由一個核心開發(fā)團隊在維護巡扇,Guido van Rossum 仍然占據(jù)著至關(guān)重要的作用
三垮衷、Python特點
1. 易于學習:Python有相對較少的關(guān)鍵字,結(jié)構(gòu)簡單搀突,和一個明確定義的語法,學習起來更加簡單仰迁。
2. 易于閱讀:Python代碼定義的更清晰。
3. 易于維護:Python的成功在于它的源代碼是相當容易維護的轩勘。
4. 一個廣泛的標準庫:Python的最大的優(yōu)勢之一是豐富的庫,跨平臺的绊寻,在UNIX,Windows和Macintosh兼容很好澄步。
5. 互動模式:互動模式的支持,您可以從終端輸入執(zhí)行代碼并獲得結(jié)果的語言村缸,互動的測試和調(diào)試代碼片斷。
6. 可移植:基于其開放源代碼的特性仇箱,Python已經(jīng)被移植(也就是使其工作)到許多平臺。
7. 可擴展:如果你需要一段運行很快的關(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安裝
五惶岭、第一個Python程序
1.創(chuàng)建python file
2.練習打印hello world
六、Python變量和數(shù)據(jù)類型
1. 變量的定義
在程序中,有時我們需要對2個數(shù)據(jù)進行求和症革,那么該怎樣做呢?
大家類比一下現(xiàn)實生活中噪矛,比如去超市買東西,往往咱們需要一個菜籃子艇挨,用來進行存儲物品,等到所有的物品都購買完成后势就,在收銀臺進行結(jié)賬即可
如果在程序中,需要把2個數(shù)據(jù)苞冯,或者多個數(shù)據(jù)進行求和的話,那么就需要把這些數(shù)據(jù)先存儲起來舅锄,然后把它們累加起來即可
在Python中,存儲一個數(shù)據(jù)皇忿,需要一個叫做變量的東西,如下
num1=100#num1就是一個變量鳍烁,就好一個小菜籃子num2=87#num2也是一個變量result=num1+num2 #把num1和num2這兩個"菜籃子"中的數(shù)據(jù)進行累加桨踪,然后放到 result變量中
程序就是用來處理數(shù)據(jù)的老翘,而變量就是用來存儲數(shù)據(jù)的
Python3 的六個標準數(shù)據(jù)類型中:
不可變數(shù)據(jù)(3 個):Number(數(shù)字)、String(字符串)墓怀、Tuple(元組);
可變數(shù)據(jù)(3 個):List(列表)傀履、Dictionary(字典)、Set(集合)钓账。
2. 概念
1. 整數(shù)
Python可以處理任意大小的整數(shù),當然包括負整數(shù)梆暮,在Python程序中绍昂,整數(shù)的表示方法和數(shù)學上的寫法一模一樣啦粹,例如:1窘游,100,-8080忍饰,0,等等艾蓝。
2. 浮點數(shù)
浮點數(shù)也就是小數(shù),之所以稱為浮點數(shù)饶深,是因為按照科學記數(shù)法表示時,一個浮點數(shù)的小數(shù)點位置是可變的敌厘,比如,1.23x109和12.3x108是相等的饱狂。浮點數(shù)可以用數(shù)學寫法,如1.23休讳,3.14尿孔,-9.01俊柔,等等。
整數(shù)和浮點數(shù)在計算機內(nèi)部存儲的方式是不同的雏婶,整數(shù)運算永遠是精確的(除法難道也是精確的?是的A敉怼),而浮點數(shù)運算則可能會有四舍五入的誤差错维。
3. 字符串
字符串是以''或""括起來的任意文本,比如'abc'参歹,"xyz"等等。請注意泽示,''或""本身只是一種表示方式蜜氨,不是字符串的一部分,因此飒炎,字符串'abc'只有a,b郎汪,c這3個字符闯狱。
4. 布爾值
布爾值和布爾代數(shù)的表示完全一致煞赢,一個布爾值只有True哄孤、False兩種值,要么是True瘦陈,要么是False,在Python中晨逝,可以直接用True、False表示布爾值(請注意大小寫)捉貌,也可以通過布爾運算計算出來冬念。
布爾值可以用and牧挣、or和not運算。
and運算是與運算浸踩,只有所有都為 True,and運算結(jié)果才是 True检碗。A與B true true
or運算是或運算,只要其中有一個為 True折剃,or 運算結(jié)果就是 True。
not運算是非運算怕犁,它是一個單目運算符,把 True 變成 False戈轿,F(xiàn)alse 變成 True。
5. 空值
空值是Python里一個特殊的值思杯,用None表示挠进。None不能理解為0色乾,因為0是有意義的领突,而None是一個特殊的空值。
代碼示例:
```
#整數(shù)
a=1;
#浮點數(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.標識符
1. 什么是標識符澎办?
????????開發(fā)人員在程序中自定義的一些符號和名稱
????????標識符是自己定義的,如變量名 、函數(shù)名等
2. 標識符的命名規(guī)則:
? ??標識符只能由字母浮驳、下劃線“_”捞魁、數(shù)字組成至会。
????標識符不能以數(shù)字開頭谱俭。
? ? 標識符不能使用關(guān)鍵字
? ? 標識符對大小寫敏感宵蛀。
?(建議:標識符命名應“見名知意”)
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.標識符的命名方法
小駝峰式命名法:函數(shù)名 ???? addName
大駝峰式命名法:類名???? AddName
4.Python中print語句
print() 方法用于打印輸出县貌,最常見的一個函數(shù)。
語法:
print(*objects, sep=' ', end='\n', file=sys.stdout)
參數(shù):
objects -- 復數(shù)煤痕,表示可以一次輸出多個對象。輸出多個對象時摆碉,需要用 , 分隔。
sep -- 用來間隔多個對象巷帝,默認值是一個空格。
end -- 用來設定以什么結(jié)尾楞泼。默認值是換行符 \n驰徊,我們可以換成其他字符串堕阔。
file -- 要寫入的文件對象。
代碼示例:
#直接打印
print("哈哈哈哈")
#多條打印
print("哈哈哈哈","呵呵呵呵","吼吼吼吼"),
#打印+計算
print("100+200的和是:",100+200);
#設置間隔符號
print("www","runoob","com",sep=".")? # 設置間隔符? www.runoob.com
格式化輸出:
方式一:使用百分號(%)字符串格式化
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.設置換行符號
print(a,b,c,d,e,sep=";",end="\n");
6.Python中input語句
input() 用來獲取控制臺的輸入勋桶。
語法:
input([prompt])
七侥猬、運算符
1 算術(shù)運算符:
+? ? 加????—— 兩個對象相加
-? ? 減? ? —— 得到負數(shù)或者是一個數(shù)減去另一個數(shù)
*? ? 乘? ? —— 兩個數(shù)相乘或是返回一個被重復若干次的字符串
/? ? 除以 —— x除以y?
%? 取模? ?—— 返回除法的余數(shù)
**? ?冪? ? —— 返回x的y次冪
//? ?取整除? ?—— 向下取接近商的整數(shù)
2.邏輯運算符:
and ——? ?x? and? y? ? ?布爾“與”捐韩,如果x為False退唠,x? and? y? 返回x的值荤胁,否則返回y的計算值
or? ?——? ?x? or? y? ? 布爾“或”,如果x是True仅政,它返回x的值,否則它返回y的計算值
not? ?——? ? not? x? ? 布爾“非”滩愁,如果x為True,返回False硝枉。如果x為False廉丽,它返回True
3.比較運算符
==? ? 等于妻味,比較對象是否相等
!=? ? 不等于,比較兩個對象是否不相等
>? ? 大于责球,返回x是否大于y
<? ? 小于,返回x是否小于y雏逾,所以比較運算符返回1表示真,返回0表示假价脾。這分別與特殊的變量True和False等價,注意侨把,這些變量名的大寫
>=? ? 大于等于妹孙,返回x是否大于等于y
<=? ? 小于等于秋柄,返回x是否小于等于y
4.賦值運算符:
=? ? 簡單的賦值運算符
+=? ? 加法賦值運算符
- =? ? 減法賦值運算符
*=? ? 乘法賦值運算符
/=? ? 除法賦值運算符
%=? ? 取模賦值運算符
**=? ? 冪賦值運算符
//=? ? 取整除賦值運算符
:=? ? 海象運算符