Python基礎+數據科學入門(一)基本語法元素
聲明:該博客參考深度之眼的視頻課程,如有侵權請聯系小編刪除博文,謝謝! 若總結有所失誤,還請見諒,并歡迎及時指出。
Python所使用環境和基本語法元素
該系列python基礎針對之后學習人工智能打造的,所學習的python基礎知識并不全面,僅涉及與人工智能方面相關的python內容
所使用開發環境
以Anaconda為主要開發工具(可自行百度安裝教程),使用Jupyter Notebook
開發語言為python3
基本語法元素
1 基本數據類型
1.1 數字類型
int 整型 整數
float 浮點型 帶小數的數
complex 復數 a+bj
1.2 字符串類型
str 字符串 文本
組成: 由數字、字母、空格、其他字符等組合而成
表達: 用“ ”或‘ ’
1.3 布爾類型
用于邏輯運算
輸出為Ture或者False
2 組合類型:列表、元組、字典、集合
2.1 列表
list 列表
序列類型:數據有位順序(從0開始計)
表示方式:[data1,data2…]
2.2 元組
tuple 元組
表示方式:(data1,data2…)
元素不支持修改——“不可變的列表” (與列表的區別)
2.3 字典
dict 字典
映射類型:通過“鍵”-“值”的映射實現數據存儲和查找
表示方式:{key1:value1,key2:value2,…}
2.4 集合
set 集合
一系列互不相等的元素的集合,無序的(如果出現相同的元素,只會保留其中一種,刪除其他)
表示方式:{data1,data2…}
3 變量
3.1 變量的概念
量 實實在在的對象:數據,抽象
變 可變性:增、刪、查、改等
變量二要素:變量名、賦值
3.2 變量的命名
命名要求:由大寫字母、小寫字母、下劃線、 數字、漢字及其組合 (嚴格區分大小寫)
注意:首字符不允許是數字、變量名中間不能有空格、不能與33個Python保留字相同
3.3 變量名定義技巧
變量名盡可能有實際意義,表征數據的某種特性
第一種:
age_of_student = {16,15,19}
下劃線(推薦:變量和函數名)變量名由多個單詞組成:用_連接多個單詞
第二種
AgeOfStudent
駝峰體(推薦:類名) 變量名由多個單詞組成:單詞首字母大寫
第三種
特殊變量:常量(不變的量,如π、e等) 變量名所有字母均為大寫
注意:盡量避免使用中文或者拼音作為變量名
4 變量的賦值
4.1 一般賦值
通過等號自右向左賦值
eg:x = 1 + 2
4.2 增量賦值
eg:x += 10 (即x = x + 10)
4.2 打包賦值
x, y = 1, 2 (實現同時分別賦值)
x, y = y, x (對x,y的值進行互換)
5 控制流程
5.1 順序流程
自上向下依次逐行執行
5.2循環流程——遍歷流程(for)
主要形式:
for 元素 in 可迭代對象:
執行語句
eg:實現1到5求和
res = 0
for i in [1,2,3,4,5]: #每次迭代,取出一個i
res += i #對每次迭代取出的i進行相應的操作
res #遍歷結束后,執行后續語句
5.3循環流程——無限循環(while)
主要形式:
while 判斷條件:
條件為真,執行語句
條件為假,while循環結束
eg:實現1到5求和
i = 1
res = 0
while i <=5: #若i不大于5,則循環繼續
res += i
i += 1
res #若循環條件不成立,循環停止,執行后續語句
5.4 分支流程(if)
最簡單的形式:
if 判斷條件:
條件為真,執行語句
else:
條件為假,執行語句
age = 18
if age > 22:
print("可以結婚了")
else:
print("急個啥,等著。。")
6 輸入輸出
6.1 數據從哪里來
- 外部文件導入,如:本地硬盤、網絡端等
- 程序中定義
上個例子中的 age = 19 - 動態交互輸入input
x = eval(input("請輸入一個數字:"))
x
加了eval()后x是一個整型,如果不加則是字符串型
6.2 數據去哪了
- 存儲到本地硬盤或者網絡端
- 打印輸出 print
print(666) #直接打印輸出
x = 12 #打印輸出變量
print(x,end=" ") #print輸出后會自動換行,不想自動換行可以加一個end
PI = 3.14 #幾個變量組合輸出
E = 2.718
print("PI = ",PI,"E = ",E)
6.3 格式化輸出方法 format
基本格式:“字符{0:修飾 }字符{1:修飾}字符”.format(v0,v1)
print("PI = {0},E = {1}".format(PI,E)) #前面與后面順序一一對應
print("{0:_^20}".format(PI)) #填充輸出,輸出結果________3.14________ _指下劃線填充 20指字符寬度
print("{0:_>20}".format(PI)) #填充輸出,輸出結果________________3.14 右對齊
print("{0:_<20}".format(PI)) #填充輸出,輸出結果3.14________________ 左對齊
print("{0:,}".format(10000000)) #數字千分位分隔符,輸出結果10,000,000
print("{0:*^20,}".format(10000000)) #填充加千分位分隔符輸出,輸出結果*****10,000,000***** 居中對齊 *號填充
print("{0:.2f}".format(E)) #保留2位小數,f表示為浮點數,結果2.72
print("{0:.1%}".format(0.88764)) #按百分數輸出,且保留1位小數
print("{0:.2e}".format(0.88764)) #按科學計數法輸出,保留2小數,結果8.88e-01
6.4 整數的進制轉換輸出
"二進制{0:b},Unicode{0:c},十進制{0:d},八進制{0:o},十六進制{0:x}".format(450) #輸出結果二進制111000010,Unicode?,十進制450,八進制702,十六進制1c2
7 程序格式
7.1 行最大長度
所有行限制的最大字符數為79
7.2 縮進
用縮進來表示語句之間的邏輯
在 for while if def class 等:之后下一行開始進行縮進,表明后續代碼與前句之間的從屬關系
縮進量:4字符
res = 0
for i in [1,2,3,4,5]:
res += i #縮進4個字符
res
7.3 使用空格
對空格的使用會讓我們看代碼時,更加直觀,美觀,漂亮
#二元運算符兩邊加一個空格
x = 2 #賦值
x + =4 #增量
6 > 2 #比較
#使用不同優先級的運算符,考慮在最低級的運算符周圍添加空格
x = x*2 - 1
x = x*x + y*y
c = (a+b) * (a-b)
#在逗號之后使用空格
x, y = 1, 2
ls = [1, 2, 3]
#注意不要使用一個以上空格
x = 1
7.4 避免使用空格
#在制定關鍵字參數或者默認參數值的時候,不要在=附近加上空格
def fun(n=1, n=2)
print(n, m)
7.5 小結
- 以上屬于PEP8格式指南的部分內容,養成良好的代碼規范利人利己
- 格式約定的目的:使python代碼的風格一致,提升代碼的可讀性
- 在某些特殊場合中要以項目規范優先,不要死板教條執行格式規范
7.6 注釋
單行注釋:
格式: # 注釋內容
多行注釋:
格式:""" 注釋內容,可分行 “”"
智能推薦
【Python】Python基本語法元素
文章目錄 python的兩種編程方式 交互式 文件式 實例 根據半徑r計算圓面積 同切圓繪制 實例:溫度轉換 碰到的問題 Python程序語法元素分析 程序的格式框架 縮進 注釋 命名與保留字 命名 保留字 數據類型 字符串 數字類型 列表類型 語句與函數 賦值語句 分支語句 函數 Python程序的輸入輸出 輸入函數input 輸出函數print 評估函數eval() python的兩種編程方式...
從零開始學Python(一) Python基本語法元素
從零開始學Python(一) Python基本語法元素 本文思維導圖: 一、程序設計基本方法 1、計算機與程序設計 (1)計算機是根據指令操作數據的設備,具有功能性和可編程性。 功能性:對數據的操作,表現為數據計算、輸入輸出處理和結果存儲等。 可編程性:根據一系列指令自動地、可預測地、準確地完成操作者的意圖。 (2)計算機的發展參照摩爾定律(單位面積集成電路上可容納晶體管的數量約每兩年翻一番),表...
Python基礎+數據科學入門(四)程序控制結構
聲明:該博客參考深度之眼的視頻課程,如有侵權請聯系小編刪除博文,謝謝! 若總結有所失誤,還請見諒,并歡迎及時指出。 程序控制結構 1.1 條件測試 1.1.1 比較運算 1.1.2 比較運算 1.1.3 比較運算...
猜你喜歡
freemarker + ItextRender 根據模板生成PDF文件
1. 制作模板 2. 獲取模板,并將所獲取的數據加載生成html文件 2. 生成PDF文件 其中由兩個地方需要注意,都是關于獲取文件路徑的問題,由于項目部署的時候是打包成jar包形式,所以在開發過程中時直接安照傳統的獲取方法沒有一點文件,但是當打包后部署,總是出錯。于是參考網上文章,先將文件讀出來到項目的臨時目錄下,然后再按正常方式加載該臨時文件; 還有一個問題至今沒有解決,就是關于生成PDF文件...
電腦空間不夠了?教你一個小秒招快速清理 Docker 占用的磁盤空間!
Docker 很占用空間,每當我們運行容器、拉取鏡像、部署應用、構建自己的鏡像時,我們的磁盤空間會被大量占用。 如果你也被這個問題所困擾,咱們就一起看一下 Docker 是如何使用磁盤空間的,以及如何回收。 docker 占用的空間可以通過下面的命令查看: TYPE 列出了docker 使用磁盤的 4 種類型: Images:所有鏡像占用的空間,包括拉取下來的鏡像,和本地構建的。 Con...
requests實現全自動PPT模板
http://www.1ppt.com/moban/ 可以免費的下載PPT模板,當然如果要人工一個個下,還是挺麻煩的,我們可以利用requests輕松下載 訪問這個主頁,我們可以看到下面的樣式 點每一個PPT模板的圖片,我們可以進入到詳細的信息頁面,翻到下面,我們可以看到對應的下載地址 點擊這個下載的按鈕,我們便可以下載對應的PPT壓縮包 那我們就開始做吧 首先,查看網頁的源代碼,我們可以看到每一...
Linux C系統編程-線程互斥鎖(四)
互斥鎖 互斥鎖也是屬于線程之間處理同步互斥方式,有上鎖/解鎖兩種狀態。 互斥鎖函數接口 1)初始化互斥鎖 pthread_mutex_init() man 3 pthread_mutex_init (找不到的情況下首先 sudo apt-get install glibc-doc sudo apt-get install manpages-posix-dev) 動態初始化 int pthread_...