《Python 語(yǔ)言基礎(chǔ)》
python 簡(jiǎn)介
-
python 的誕生
-
創(chuàng)始人: Guido van Rossum(荷蘭人)摄悯。 guido
時(shí) 間 : 1989年圣誕節(jié)期間
地 點(diǎn) : 阿姆斯特丹
Python命名: 源于Guido 是一個(gè)喜劇團(tuán) Monty Python 的粉絲。
-
創(chuàng)始人: Guido van Rossum(荷蘭人)摄悯。
-
python 的應(yīng)用領(lǐng)域
- 自動(dòng)化系統(tǒng)運(yùn)維
- 自動(dòng)化測(cè)試
- 人工智能愧捕,機(jī)器人
- 搜索引擎奢驯,爬蟲(chóng)
- 科學(xué)計(jì)算
- web網(wǎng)站后端開(kāi)發(fā)
- 云計(jì)算
- 大數(shù)據(jù)及數(shù)據(jù)庫(kù)編程
- 游戲
- 其它
-
python 的優(yōu)缺點(diǎn)
- 優(yōu)點(diǎn)
- 簡(jiǎn)單易學(xué)易用
- 開(kāi)發(fā)效率高
- 應(yīng)用領(lǐng)域廣泛
- 免費(fèi)
- 可移植(支持 Windows, Mac OS X, Linux操作系統(tǒng))
- 可混合編程(C/C++)
- 開(kāi)源
- 面向?qū)ο?Java, C++, Python)
- 缺點(diǎn)
- 與C/C++相比,執(zhí)行速度不夠快
- 不能封閉源代碼
- 優(yōu)點(diǎn)
-
python 的官網(wǎng)
- 網(wǎng)址: https://www.python.org
- 我們可以通過(guò)官網(wǎng)得到更多更新的信息及文檔次绘。
-
python 的版本
- Python V2.7(2020年已經(jīng)結(jié)束維護(hù))
- Python V3.6(當(dāng)前教學(xué))
- Python V3.9(最新)
-
python 的獲取:
- python 下載地址:
-
python的官方文檔
安裝Python3
yum install python3
Python起步
第一個(gè)Python程序
編寫(xiě)一個(gè) hello.py
-
寫(xiě)入內(nèi)容
print('hello world!')
-
用Python的解釋執(zhí)行器執(zhí)行 hello.py
Linux下
$ /usr/bin/python3 ~/桌面/hello.py
Windows 下
C:\> python hello.py
-
python 的兩種運(yùn)行模式
- 使用文件解釋執(zhí)行模式
先將 python 的語(yǔ)句瘪阁。寫(xiě)入xxx.py當(dāng)中。然后用python3 命令解釋執(zhí)行該文件
$ python3 xxx.py
- 交互模式
在命令提示符下直接輸入python3命令進(jìn)入交互模式断盛。
調(diào)用exit() 退出交互模式
Linux 下進(jìn)入交互模式
$ python3 <回車(chē)>
>>> # 在此處可以輸入 語(yǔ)句和表達(dá)式(回車(chē)執(zhí)行)
>>> exit() # 退出交互模式罗洗,回到終端</pre>
-
使用文件解釋執(zhí)行方式示例
[root@localhost day01]# cat hello.py print('Hello World!') [root@localhost day01]# python3 hello.py Hello World!
Python 的基本輸入輸出
Python 的輸出函數(shù)
-
print() 函數(shù)
-
作用:
向終端輸出文字信息,能讓用戶(hù)看到
-
當(dāng)有多個(gè)數(shù)據(jù)要輸出時(shí)钢猛,中間用英文的逗號(hào)(,) 分隔開(kāi)
-
調(diào)用格式
print(數(shù)據(jù)1, 數(shù)據(jù)2, 數(shù)據(jù)3, ..., sep=' ', end='\n')
在python中主要使用print實(shí)現(xiàn)輸出,print是一個(gè)函數(shù)
在python中函數(shù)調(diào)用需要添加()轩缤,括號(hào)內(nèi)是傳給函數(shù)的參數(shù)
-
示例
print("hello world!") print("魏老師的年齡是", 35) print(1, 2, 3, 4) print(1, 2, 3, 4, sep=" ", end="\n") print(1, 2, 3, 4, sep="###", end="\n\n\n") print(1, 2, 3, 4)
Python的基本輸入函數(shù) input 函數(shù)
-
作用
讓程序停下來(lái)命迈,等待用戶(hù)輸入文字信息,返回用戶(hù)輸入文字的 字符串
調(diào)用格式
input("提示信息")
-
示例
name = input('請(qǐng)輸入您的姓名:')
python中火的,通過(guò)input函數(shù)獲取用戶(hù)鍵盤(pán)輸入
input函數(shù)的參數(shù)是字符串壶愤,它是屏幕提示語(yǔ)
注釋
注釋以井號(hào) (#
) 開(kāi)頭,在物理行末尾截止馏鹤。
變量和賦值語(yǔ)句
賦值語(yǔ)句
-
作用
創(chuàng)建一個(gè)自定義名字的變量征椒,此變量可以用于綁定一個(gè)表達(dá)式執(zhí)行的結(jié)果,供后續(xù)使用
語(yǔ)法
變量名 = 表達(dá)式
變量名1 = 變量名2 = 變量名3 = 表達(dá)式
變量名1, 變量名2, 變量名3 = 表達(dá)式1, 表達(dá)式2, 表達(dá)式3
-
示例
one_hundred = 99 + 1 a = b = c = 200 a, b = 100, 200
說(shuō)明
- 第一次為變量賦值湃累,python 會(huì)創(chuàng)建變量勃救,同時(shí)綁定表達(dá)式執(zhí)行的結(jié)果
- 第二次或者以后為變量賦值,會(huì)改變?cè)凶兞康慕壎P(guān)系
- python 的變量沒(méi)有類(lèi)型,它綁定的對(duì)象才有類(lèi)型
- 變量在使用之前侵佃,必須先進(jìn)行賦值
- 變量賦值是一個(gè)自右向左的運(yùn)算块请,將=右邊表達(dá)式的計(jì)算結(jié)果,賦值給左邊的變量
變量
變量是在python 內(nèi)用賦值語(yǔ)句創(chuàng)建晕讲,用來(lái)綁定一個(gè)數(shù)據(jù)的有名對(duì)象
-
變量名
變量名必須是一個(gè)標(biāo)識(shí)符
-
標(biāo)識(shí)符的命名規(guī)則
第一個(gè)字母必須是英文字母或下劃線 [ A-Za-z_ ]
-
從第二個(gè)字母起(如果有),必須是英文字母或下劃線或數(shù)字
[ A-Za-z0-9_ ]
變量名稱(chēng)約定
變量名區(qū)分大小寫(xiě)
示例
以下是合法的標(biāo)識(shí)符
a a1 abc ABC a1b2c3d4
one_hundred count _a __ABC__
getNameAge get_name_age GetNameAge
# 小駝峰 匈牙利命名法 大駝峰
python 編程語(yǔ)言中的關(guān)鍵字不能作為標(biāo)識(shí)符
-
推薦采用的命名方法
- 變量名全部采用小寫(xiě)字母覆获,如pythonstring
- 簡(jiǎn)短、有意義瓢省,如pystr
- 多個(gè)單詞間用下劃線分隔弄息,如py_str
- 變量名用名詞,函數(shù)名用謂詞(動(dòng)詞+名詞)勤婚,如 phone / update_phone
- 類(lèi)名采用駝峰形式疑枯,如MyClass
-
關(guān)鍵字(keywords)
- 計(jì)算機(jī)編程語(yǔ)言中保留的標(biāo)識(shí)符稱(chēng)為關(guān)鍵字, 關(guān)鍵字不能當(dāng)成普通的標(biāo)識(shí)符使用
關(guān)鍵字通常用于語(yǔ)法標(biāo)識(shí)
- python3.9中 的全部的關(guān)鍵字
False await else import pass
None break except in raise
True class finally is return
and continue for lambda try
as def from nonlocal while
assert del global not with
async elif if or yield
-
示例
>>> a = 10 + 5 # 第一次為變量賦值是創(chuàng)建變量 >>> a 15 >>> a = 100 # 再次為變量賦值,會(huì)改變已經(jīng)存在的變量.
-
練習(xí)
寫(xiě)一個(gè)程序 myprog.py
- 1. 讓用戶(hù)輸入用戶(hù)名
- 2. 讓用戶(hù)輸入密碼
- 3. 打印 誰(shuí)誰(shuí)誰(shuí) 的密碼是 xxx
答案:
name = input("請(qǐng)輸入您的姓名: ") password = input("請(qǐng)輸入您的密碼: ") print(name, '的密碼是:', password)
Python 的基礎(chǔ)數(shù)據(jù)類(lèi)型
- 字符串(文字)
- 數(shù)字
- 容器類(lèi)型
示例
住址: 字符串
郵編: 數(shù)字(也可以用字符串)
門(mén)牌號(hào): 整數(shù)
-
字符串
程序中,用來(lái)記錄人類(lèi)的文字信息的一種數(shù)據(jù)類(lèi)型
- 創(chuàng)建字符串的字面值
用 英文的 ' 或 " 或 ''' 或 """ 開(kāi)始或結(jié)束
此示例示意字符串的寫(xiě)法
print('同學(xué)們好')
print("同學(xué)們好")
print('''同學(xué)們好''')
print("""同學(xué)們好""")
-
說(shuō)明
雙引號(hào)的字符串的內(nèi)部的單引號(hào)不算是結(jié)束符
-
單引號(hào)的字符串的內(nèi)部的雙引號(hào)不算是結(jié)束符
# I'm a teacher! print("I'm a teacher!") # 我是"魏明擇" print('我是"魏明擇"')
-
三引號(hào)字符串的內(nèi)部可以包含單引號(hào)和雙引號(hào)
# I'm a teacher! 我是"魏明擇" print('''I'm a teacher! 我是"魏明擇"''')
-
三引號(hào)字符串又稱(chēng)為所見(jiàn)即所得字符串, 每一次換行會(huì)轉(zhuǎn)換成換行符 '\n'
# print("詠鵝\n鵝鵝鵝,\n曲項(xiàng)向天歌;\n白毛浮綠水蛔六,\n紅掌撥清波荆永。") # 等同于如下寫(xiě)法 print('''詠鵝 鵝鵝鵝, 曲項(xiàng)向天歌; 白毛浮綠水, 紅掌撥清波国章。''')
思考
我是單引號(hào)',我是雙引號(hào)", 我是三單引號(hào)''', 我是三雙引"""
-
字符串的轉(zhuǎn)義
字符串的字面值中具钥,可以加反斜杠 \ 后加一個(gè)或多個(gè)字符串,代表一個(gè)單個(gè)的字符
\' 代表一個(gè)單引號(hào) \" 代表一個(gè)雙引號(hào) \n 代表一個(gè)換行符 \\ 代表一個(gè)反斜杠
-
解決方法
print('我是單引號(hào)\',我是雙引號(hào)\", 我是三單引號(hào)\'\'\', 我是三雙引"""')
練習(xí)
# 練習(xí)打印
""" ''' " '*#
-
Python 中全部的轉(zhuǎn)義字符串
轉(zhuǎn)義序列 含義 注釋 \newline
反斜杠加換行全被忽略 \\
反斜杠 ( \
)\'
單引號(hào) ( '
)\"
雙引號(hào) ( "
)\a
ASCII 響鈴 (BEL) \b
ASCII 退格 (BS) \f
ASCII 進(jìn)紙 (FF) \n
ASCII 換行 (LF) \r
ASCII 回車(chē) (CR) \t
ASCII 水平制表 (TAB) \v
ASCII 垂直制表 (VT) \ooo
八進(jìn)制數(shù) ooo 碼位的字符 (1,3) \xhh
十六進(jìn)制數(shù) hh 碼位的字符 (2,3) -
練習(xí):
# 寫(xiě)程序液兽,打印如下文本內(nèi)容 print("hello world")
答案
>>>> print('print("hello world")')
print("hello world")
>>>
>>> print("print(\"hello world\")")
print("hello world")
-
字符串的基本運(yùn)算
+
號(hào)運(yùn)算符, 用于拼接字符串(生成新的字符串)+
號(hào)的兩側(cè)都必須是字符串
'今天是' + '7月13日' # 生成 '今天是7月13日'
s1 = '123'
s2 = "456"
s3 = s1 + s2
print(s1) # 123
print(s2) # 456
print(s3) # 123456
*
運(yùn)算, 用于生成重復(fù)的字符串
字符串只能和整數(shù)相乘
print('我想你了' * 100)
-
練習(xí)
寫(xiě)一個(gè)程序, 打印如下的長(zhǎng)方形
長(zhǎng)方形的寬是 10 個(gè) # 號(hào)
高是 4個(gè) # 號(hào)########## # # # # ##########
-
數(shù)字
- Python 中的基本的數(shù)字類(lèi)型
- 整數(shù) int
- 浮點(diǎn)數(shù)(小數(shù)) float
- 布爾類(lèi)型數(shù) bool
- Python 中的基本的數(shù)字類(lèi)型
-
整數(shù) int
整數(shù)的字面值
# 十進(jìn)制的寫(xiě)法 100 0 -5 # 二進(jìn)制的寫(xiě)法 0b 開(kāi)頭 后跟 0~1 0b1101 # 八進(jìn)制的寫(xiě)法 0o開(kāi)頭 后跟 0~7 0o777 等于 0b111111111 等于 511 # 十六進(jìn)制的寫(xiě)法 0x 開(kāi)頭 后跟 0~9, a-f, A-F 0xA1B2C3D4
-
浮點(diǎn)數(shù)(小數(shù)) float
浮點(diǎn)數(shù)的字面值
# 小數(shù)寫(xiě)法 3.14 0.14 .14 3.0 3. 0.0 # 科學(xué)計(jì)數(shù)法 6.18E-1 # 等同于 0.618 2.9979E8 # 等同于 299790000.0
-
布爾類(lèi)型的數(shù) bool
- True 真(表示行骂删,好,成立) 值為1
- False 假(表示不行四啰,不好宁玫,不成立) 值為0
算術(shù)運(yùn)算符
+ 加法
- 減法
* 乘法
/ 除法
// 地板除法(向下取整) floordiv
% 求余數(shù)
** 冪運(yùn)算(也叫乘方運(yùn)算) x ** y 代表 x 的 y 次方
示例
>>> 1 + 2 * 3 / 4
2.5
>>> 14 / 3
4.666666666666667
>>> 14 // 3
4
>>> 14 % 3
2
>>> 3 ** 2
9
練習(xí)1
超市的西瓜 13 元一個(gè), 問(wèn) 你拿100 元可以買(mǎi)幾個(gè)西瓜,剩余 幾元
課后練習(xí)1
現(xiàn)在是 18:02:31 秒 請(qǐng)問(wèn)現(xiàn)在距離 凌晨 0:0:0 過(guò)了多少秒?
寫(xiě)程序打印出來(lái)
課后練習(xí)2:
已知從凌晨 0:0:0 到現(xiàn)在已經(jīng)過(guò)了 63320 秒, 請(qǐng)問(wèn)現(xiàn)在是 幾時(shí)幾分幾秒?
用地板除法和求余數(shù)實(shí)現(xiàn)