剛開始寫頭條,也不知道寫些神馬,就先給大家分享一下之前學習python的一些筆記吧,以後每天會繼續更新新的筆記,寫的不好的地方也希望大家多提意見,謝謝大家,希望大家喜歡我的分享。
<<python>>簡介/<python>
python的誕生
創建人: Guido van Rossum (荷蘭人)
時 間: 1989年
python語言的應用領域:
系統運維
網絡編程(搜索引擎,爬蟲,服務器編程)
科學計算
人工智能,機器人
web 開發
雲計算
大數據及數據庫編程
教育
遊戲,圖像處理
其它。。。
python優缺點:
優點:
面向對象(Java, C++, Python, C#, Swift)
免費
可移植 (Windows, Linux, Unix, IOS, 安卓)
可混合編程(C / C++ / Java / .net )
簡單易學易用
應用領域廣泛
開源
缺點:
與 C/C++相比,執行速度不夠快
不能封閉源代碼
python的官網
https://www.python.org
python的版本
python V2.7 (2020年結束維護)
python V3.5 (當前教學)
python V3.8 (最新)
python 的運行:
python的解釋執行器的類型
CPython (C語言開發)
Jython (Java語言開發)
IronPython (.net開發)
PyPy (Python語言開發)
第一個python程序
編寫: hello.py
執行python程序
$ python3 文件路徑名.py
例:
$ python3 /home/tarena/aid1806/pbase/day01/hello.py
常用的文件後綴:
.py python語言後綴
.c C語言
.cpp/.cc/.cxx C++語言後綴
.java Java語言後綴
在python交互模式下編寫並執行代碼
進入交互模式:
$ python3
退出交互模式:
>>> quit()
>>> exit()
或輸入: ctrl + d (輸入文件結束符)
python 的註釋
以 # 開頭, 直至行尾
作用:
讓註釋內容不參加解釋執行
sublime 註釋快捷鍵 ctrl + /
python 程序的組成:
程序是由模塊組成
模塊是由數據,函數,類等組成
函數由語句組成
語句由表達式組成
python 的核心數據類型
數字(整型數int,浮點型數float,複數complex, 布爾型bool)
字符串 str, 列表 list 等
整型數 int
整數是不帶有小數部分的數字
整數 的字面值表示方式
十進制表示方式
如:
10
200
-100
99999999999999999999999999
八進制表示方式
如:
0o177 (127)
0o11 (9)
十六進制表示方式:
如:
0x11 (17)
0xFF (255)
0x1a2b
二進制表示方式:
如:
0b111
0b101
進制:
二進制 逢二進一 (0~1)
八進制 逢八進一 (0~7)
十進制 逢十進一 (0~9)
十六進制 逢十六進一 (0~9,A-F, a-f)
浮點型數 float
浮點數是帶有小數部分的數字(小數部分可以是0)
浮點數的字面值表示方式:
小數表示法:
如:
3.14 3.1 3.0 3. 0.14 .14
科學計數法:
格式:
小數 e/E (正負號) 指數
如:
6.18E-1 (等同於 0.618)
2.9979e8 等於299790000.0
複數 complex
分為兩部分:
實部(real)
虛部(image)
虛部是以j或J結尾的數
字面值:
1j
(2J)
1+2J
3-4j
布爾型數 bool
用來表求真和假兩種狀態的數字
True 表示值(條件滿足或成立)
False 表示假(條件不滿足或不成立)
說明:
True 的值為1
False 的值為0
內置對象
空值 None
None 是一個表示不存的特殊對象
作用:
用來佔位
變量解除綁定
表達式和運算符
表達式 expression
由一個數字 或 數字和運算符 等組成
作用:
通常讓計算做一些事情並返回結果
如:
1 + 2
1 + 2 * 3 + 4 / 5
運算符:
算術運算符:
+ 加法
- 減法
* 乘法
/ 除法
// 地板除floordiv
% 求餘
** 冪運算
/ 除法
除法得到的數是浮點型數,不會丟棄小數部分
1 / 3 # 得 0.333333333333
8 / 2 # 得 4.0
// 地板除
除的結果雲掉小數部分向下取整
如:
7 / 3 # 得 2.333333333333
7 // 3 # 得 2
3.25 // 1.5 # 得 2.0
% 求餘
如:
7 % 3 # 得 1
3.25 % 1.5 # 得 0.25
** 冪運算
格式:
x ** y
意為 x的y次方
如:
4 ** 2 # 得 16
3 ** 4.0 # 得 81.0
練習:
1. 一個商店賣西瓜,7元一個,您帶20元錢能買到幾個西瓜? 剩多少元?
2. 一個學生畢業薪資10000元,每個漲薪 20%,請問十年後這個學生的薪資是多少?
<code>1. 1) 20 // 7 # 買到2個西瓜 2) 20 % 7 # 剩6元 2. 10000 * (1 + .2) ** 10 # 得 61917.36/<code>
運算符的優先級
**
* / // %
+ -
示例:
1 + 3 * 3 ** 2 + 4 // 2
1 + 3 * 9 + 4 // 2
1 + 27 + 4 // 2
1 + 27 + 2
28 + 2
30
括號分組子表達式:
()內部的表達式先進行計算
混合類型自動升級
1 + 2.14 返回類型為浮點型 3.14
3 + 4.0 返回 7.0
基本輸出函數 print
格式:
print(要打印的東西)
多個數據用逗號分隔開
練習:
1. 打印如下圖形:
*******
* *
* *
*******
<code>
2. 已知矩形的長邊長為6cm,短邊長為4cm,用表達式求
1) 周長是多少?
2) 面積是多少?
<code>
變量 variable
什麼是變量
變量是關聯一個對象的"標識符"
標識符的命名規則:
必須為字母或下劃線開頭,後跟字母或下劃線或數字
不能使用python的關鍵字
說明:
python的變量名區分大小寫
合法的標識符(變量名) 舉例 :
abc a1b2 _abc __Abcd var
不合法的標識符:
1a2b $ABC +a -b #ABC @ ABC
python關鍵字:
True, False, None, is, del, if, elif ...等
賦值語句
=
語法:
變量名 = 表達式
或
變量名1 = 變量名2 = 表達式
或
變量名1, 變量名2 = 序列
作用:
1. 創建一個變量,此變量用來綁定數據對象
2. 修改一個變量的綁定關係,讓其綁定另一個數據對象
說明:
當變量不存在時,創建該變量,同時將變量綁定在這個對象上
當變量存在時,改變此變量綁定的對象
一個變量只能綁定一個對象
兩個變量可以同時綁定同一個對象
示例:
pi = 3.1415926
pi2 = pi # pi變量 和 pi2 變量同時綁定 3.1415926
x = y = 100 # x變量和 y變量同時綁定 100
x, y = 100, 200 # 序列賦值
python 中的自動化內存管理
a = 10000
b = 20000
a = a + b # 釋放10000這個對象,a重新綁定30000
c = a # c同時綁定在30000上
練習:
1. 指定一個圓的半徑是r = 9cm
1) 計算圓的周長
2) 計算圓的面積
<code>
2. 交量交換練習:
已知有兩個變量:
a 綁定 10000
b 綁定 20000
問,在不創建任何新數據對象的情況下,如何讓a 和 b 交換綁定的對象
a = 10000
b = 20000
....
print(a) # 20000
print(b) # 10000
<code>
del 語句:
作用:
用於刪除變量,同時解除與對象的關聯關係,如果可能能釋放對象
語法:
del 變量名
在交互模式下查看當前作用域的所有變量
>>> help('__main__')
退出鍵: q
示例:
a = 10000 # 創建a變量,綁定10000
print(a) # 10000
del a # 刪除了a變量,釋放10000這個數據對象
print(a) # 出錯
自動化內存管理和引用計數:
每個對象都會記錄有幾個變量綁定(引用)自身,當引用的數量為0時,則此對象將被銷燬(釋放內存資源), 此種自動化內存管理的方式叫引用計數
例:
a = 10000
b = a # 兩個變量同時綁定10000這個數據對象
del a
del b # 此時會釋放10000這個數據對象
is / is not 運算符
作用:
判斷兩個對象是否是同一個對象,當是同一對象時返回True,否則返回False
說明:
is not 返回值與is 相反
語法:
x is y
x is not y
id(obj) 函數
作用:
返回一個對象在內存中的地址
小整數對象池
CPython中,整數-5至256的數永遠存在於小整數池中,不會釋放且可重複使用
示例:
a = 100
b = 100
a is b # True
複合賦值算術運算符
運算符 說明
y += x 等同於 y = y + x
y -= x 等同於 y = y - x
y *= x 等同於 y = y * x
y /= x 等同於 y = y / x
y //= x 等同於 y = y // x
y %= x 等同於 y = y % x
y **= x 等同於 y = y ** x
例:
x = 100
x *= 2 # x = 200
x = 100
x = x * 2 # x = 200
練習:
1. 中國古代的秤是16兩一斤,請問古代對216兩是古代的幾斤幾兩,寫程序打印出來?
<code>
2. 從凌晨 0:0:0 計時,到現在已經過了63320秒,
請問現在是幾時,幾分,幾秒,寫程序打印出來
提示:
可以用地板除和求餘實現
<code>
3. 溫度轉換:
攝氏溫度 = 5.0/9.0*(華氏溫度-32)
請問100華氏溫度是多少攝氏溫度.寫程序算出來
思考:
如果知道當前溫度是攝氏溫度度,能否算出華氏溫度是多少?
<code>
以上就是第一天筆記的全部內容,不好的地方大家可以留言提出來,希望大家喜歡,謝謝大家。
閱讀更多 Jameschou 的文章