一個懶惰的凡人最大的悲哀就在于他的自命不凡。
我現在對于天才的敬畏大概是處于我人生的巔峰,這大概是我改過自新后的表現值。
要知道,我沒事瞎想的時候會想自己的墓志銘是‘心比天高,命比紙薄’這么句話,嗯,如果我買得起墓地的話。
這段時間學習python,嗯,實際上我對于學習python也沒有什么特別的想法,因為我也不知道現在該學習什么,只是想,多學點將來好談薪資...
學習的是 python3
入門書籍
《父與子的編程之旅 》
這本書推薦給零基礎的人,真的寫的很好
《head first python》
這本書吧?head first 系列的書,也就那樣,
我還是更推薦第一本,如果擼完了第一本,
那么第二本可以不看了,反正都是入門基礎,
旨在讓你了解python,書擼完了,就可以擼代碼了,畢竟,作為程序員,擼代碼才是王道。
因為做的是前端,所以python剛開始讓我驚奇的是:
python 是嚴格縮進的,竟然沒有標點符號?
在我們還在為JavaScript中的分號打生打死似的時候,python
中竟然連條件分支中的大括號都省略了。
數據機制
python聲明數據的機制很有意思,
我也不知道自己總結的是不是正確,你聲明的數據在內存在存在,
而數據名則類似于標簽一樣的存在,你可以在你數據上貼上任意
多個的名稱,當這些名稱標簽都被del的時候,python的垃圾回收
機制會把內存中的這個數據刪除
使用一個值的時候必須首先聲明且賦值,否則會報錯
數據類型
我現在學過的:
整型(int),
浮點型(float),
字符串(str),
列表(list),
元組(tuple)
整型 int
就是整數,對于數量python沒有大小的限制?!
這且不是它可以計算任意的大小?
使用:
a = 10
浮點型 float
與整型的描述類似
使用:
a = 1.1
字符串 str
用引號包裹的字符,單雙引號都可以,但必須成對出現
使用;
a = 'name'
列表 list
這東西就是JavaScript中的數組,至于所說的列表中的數據的數據類型可以不一致,
嗯,JavaScript的數組表示不服并且表示我也可以。
使用:
a = [1,'hello',[1,2]]
內置函數倒是有些稀奇古怪的用法,嗯,實際上我這是嫉妒的說法,
畢竟python貼心的封裝了那么些日常用內置函數,對于JavaScript,
我真的是有無數句mmp不知道當講不當講。
元組 tuple
這個,跟列表有很大的相似之處,區別在于這貨是用小括號包裹的,
并且一旦定義,不可更改,嗯,這里想起來python里面的數據聲明
后好像都是不能更改的,畢竟按照python的機制來說,內存中的數據
并沒有改變,只是我又重新聲明了一個數據,然后貼上了原來的標簽
使用:
a = (1,2) 逗號是關鍵,小括號其次
例如 如果是聲明了這么個東西:
a = (1)
然后你查看它的類型:
type(a)
你就會驚奇的發現類型竟然是 int
所以,逗號是關鍵
比方說:
a = 1,
這就是一個元組
操作符
+ 加
- 減
* 乘
/ 除 得到的是精確的商 比方 5/2=2.5
// 除 得到的是取整后的商單純舍去了小數,比方 5//2=2
% 求余
條件分支
if 條件:
code
elif 條件:
code
else 條件:
code
for item in arr:
code
while 條件:
code
與或非
竟然不用符號了?!
與 用的是 and
條件1 and 條件2
或 用的是or
條件1 or 條件2
非 用的是not
not 條件1
分隔/切片
這是python中的一個好玩好用的方法,針對列表或元組,不知道對后
來學習的數據類型是否有效果,后面學到的時候在匯總。
用法:
a = [1,2,3]
a[start:end]
其中start指的切片開始的位置,end指的是切片結束的位置,end不包括在內
切片的使用方法多種多樣,比較靈活,start,end都可以為空,會
產生不同的效果
例如:
a = [1,2,3]
b = a[:]
這實際上復制了一份a數據,然后貼上了b的標簽,這倆個數據相互之間沒有影響
同樣的,如果:
b = a
則實際上a和b指的是一個數據,根據python的機制可以知道a,
b都是針對同一個數據的不同標簽而已,操作a或者b實際上操作
的是同一個數據,給我們的直觀感覺就是這倆個數據相互影響