摘要:語言也被稱作為膠水語言,可以混合其他如,等來編程可以把其他語言制作的各種模塊尤其是很輕松的聯(lián)結(jié)在一起。會(huì)認(rèn)為子類是一種父類類型。
最近學(xué)習(xí)了python3的語法,整理記錄一下;導(dǎo)語
語法是編程的先決條件,精通語法是編好程序的必要條件;
給我最大的感覺是:這個(gè)語言的編寫,居然不使用 { }來控制代碼塊的區(qū)域,而是使用縮進(jìn)來分割代碼塊,所以使用python語言編寫的代碼不能壓縮混淆。能夠簡(jiǎn)寫就簡(jiǎn)寫,絕不拖泥帶水
在python編程的世界里面,廣為傳頌的名言:Life is Simple ,I Use Python;python語言相對(duì)于其他語言來說,最大的特點(diǎn)是:簡(jiǎn)潔。為什么呢?來看一個(gè)變量交互的例子:
# 很多語言中,需要一個(gè)臨時(shí)變量來交換 temp = x x = y y = temp # 在python中 x,y = y,x
python的功能很強(qiáng)大,可以做爬蟲,自動(dòng)化運(yùn)維與自動(dòng)化測(cè)試,大數(shù)據(jù)與數(shù)據(jù)分析(Spark),AI(機(jī)器學(xué)習(xí) Tensor Flow),Web開發(fā)(Flask,Django),腳本處理。還可以跨平臺(tái)運(yùn)行,是面向?qū)ο蟮恼Z言,又有動(dòng)態(tài)腳本的特性(和Javascript一樣,屬于解釋型語言,不用編譯成二進(jìn)制文件;編譯型語言會(huì)編譯成二進(jìn)制文件供機(jī)器執(zhí)行,相對(duì)而言運(yùn)行效率高)。
python語言也被稱作為:膠水語言,可以混合其他如C++,Java等來編程;可以把其他語言制作的各種模塊(尤其是C/C++)很輕松的聯(lián)結(jié)在一起。
很喜歡的兩句話:
# python 之禪 Simple is better than complex. 簡(jiǎn)潔勝于復(fù)雜; 這和Steve Jobs的蘋果系列產(chǎn)品的理念是一致的 Now is better than never. Although never is often better than right now. 做也許好過不做,但不假思索就動(dòng)手還不如不做; 勤于思考,分析導(dǎo)致問題的原因,不做無用功
編程是為了解決我們的問題而存在的一個(gè)工具。
當(dāng)遇到問題的時(shí)候,隨手拿起python,編寫一個(gè)工具,這才是python正確的打開方式
什么是扎實(shí)的編程功底:數(shù)據(jù)結(jié)構(gòu)才是基礎(chǔ)
基礎(chǔ)語法代碼:是現(xiàn)實(shí)世界事物在計(jì)算機(jī)世界中的映射;
寫代碼:是將現(xiàn)實(shí)世界中的事物用計(jì)算機(jī)語言來描述
基本數(shù)據(jù)類型
Number(數(shù)字)
整數(shù):int
浮點(diǎn)數(shù):float
布爾:bool
復(fù)數(shù):complex
Str(字符串)
List(列表)
Tuple(元組)
Sets(集合)
Dict(字典)
python3中的浮點(diǎn)數(shù)不分精度(單/雙),整型不分短和長(zhǎng)(short / long);布爾值一定是大寫的True / False;列表使用[ ],元組使用( ),集合使用{ },字典使用{ k:v }
type(1+1.0) # 1.1 float type(2 / 2) # 1.0 float type(2 // 2) # 1 int a = 123 # 不需要寫變量的類型 isinstance(a,int) # True
上面代碼里面,type()函數(shù)來檢查變量的數(shù)據(jù)類型,也可以使用isinstance來判斷一個(gè)變量是否屬于這個(gè)類型;區(qū)別在于:
type()不會(huì)認(rèn)為子類是一種父類類型。 isinstance()會(huì)認(rèn)為子類是一種父類類型。
/ :表示除法,結(jié)果自動(dòng)轉(zhuǎn)為float類型;
// :表示整除,求的是整數(shù)部分,不會(huì)四舍五入;
聲明變量不需要在前面寫上變量的類型,直接寫一個(gè)變量名就行,不像其他語言要標(biāo)明數(shù)據(jù)類型,或者是寫上var/ let/ const
字符串是不可變的;這三種都是有序的
重復(fù)表示
print("icessun"*3) >>> "icessunicessunicessun" # 元組的重復(fù) 元組里面可以有不同的數(shù)據(jù)類型 (1,‘1’,True,[1,2,4]) (1,2,3)*3 >>> (1,2,3,1,2,3,1,2,3) # 在元組后面添加元素 使用append()方法 b = [1,2,3] b.append(4) print(b) >>> [1,2,3,4] # 元組使用+相加 (1,2,3)+(2,3,4) >>> (1,2,3,2,3,4) # 列表的重復(fù) ["ice","icess"]*3 >>> ["ice","icess","ice","icess","ice","icess"]
切片操作
[起始位置,長(zhǎng)度];截取從起始位置,長(zhǎng)度個(gè)字符;
長(zhǎng)度負(fù)數(shù)表示刪除從字符串末尾往前數(shù)的字符個(gè)數(shù);
長(zhǎng)度省略表示到末尾;
長(zhǎng)度要是超過可截取的位數(shù),以可截取的位數(shù)為標(biāo)準(zhǔn);
a = "icessun" print(a[0:4]) >>> "ices" print(a[0:-2]) >>> "icess" print(a[0:]) >>> "icessun" print(a[1:-0]) >>> " " # 表示截取了一個(gè)空字符串 print(a[1:0]) >>> " " # 表示截取了一個(gè)空字符串 print(a[:-4]) >>> "ice" print(a[-4:]) >>> "ssun" # 起始位置為負(fù)數(shù)是表示從末尾開始數(shù)(從1開始數(shù))到末尾,要是起始位置是負(fù)數(shù),那么步長(zhǎng)一定省略,否者得到的是空字符串
內(nèi)部元素的訪問
# 都是通過索引來訪問的 "icessun"[0] >>> "i" ["a","b","c"][0] >>> "a" ("a",2,True)[2] >>> True # 都可以使用len()這個(gè)函數(shù)來求長(zhǎng)度
單一的字符串索引操作得到的是字符串,但是一個(gè)列表的切片操作得到的是一個(gè)列表
a = "icessun" type(a[0:4]) >>>["ice","icess","icessun"][0] >>> "ice" # 是字符串 ["ice","icess","icessun"][0:2] >>> ["ice","icess"] # 是列表
注意
type( (1) ) >>>type( ("a") ) >>>
一般來說:( )可以表示元組,也可以表示數(shù)學(xué)運(yùn)算的優(yōu)先級(jí);所以當(dāng)想表示一個(gè)只有一個(gè)元素的元組,應(yīng)該這樣:( (1,) );在元素的 后面加上一個(gè)逗號(hào);表示一個(gè)空的元組:( ( ) )
集合無序的,不能通過索引訪問,里面的元素不重復(fù)
判斷一個(gè)元素是否在集合里面,這個(gè)方法也適合上面的數(shù)據(jù)類型
1 in {1,2} >>> True 3 not in {1,2,3,4} >>> False
集合的操作
# 集合的差集 去掉相同的元素,以前面集合為標(biāo)準(zhǔn),從一個(gè)集合里面去掉后面集合特有的元素 {1,2,3}-{2,3} >>> {1} {1,2,3}-{4} >>> {1,2,3} {1}-{4,2,3} >>> {1} # 集合的交集 找兩個(gè)集合的公有元素 {1,2,3}&{2,3} >>> {2,3} {1,3}&{2} >>> set( ) # 表示空集 len(set()) -----> 0 # 集合的并集 把兩個(gè)集合合并在一起,按照從前往后的順序,去掉相同的元素 {1,2,4}|{2,3} >>> {1,2,4,3}
注意
# 空集合的表示 set()字典
{ key : value},鍵值對(duì)的形式,類似于Javascript中的對(duì)象
key的取值是不可變的類型:int,str,元組
空的字典:{ }
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/41108.html
摘要:個(gè)數(shù)相等,順序?qū)?yīng)當(dāng)在函數(shù)參數(shù)里面使用的時(shí)候,可以在實(shí)參里面修改默認(rèn)值在調(diào)用函數(shù)傳入?yún)?shù)的時(shí)候,明確告訴實(shí)參,形參給傳的是那個(gè)實(shí)參的值, 變量 python3中變量的定義是不固定類型的(動(dòng)態(tài)),區(qū)分大小寫 值類型 引用類型 不可變的(值類型) 可變的(引用類型) int (整型) list (列表) str (字符串) set (集合) tuple (元組) di...
摘要:以下這些項(xiàng)目,你拿來學(xué)習(xí)學(xué)習(xí)練練手。當(dāng)你每個(gè)步驟都能做到很優(yōu)秀的時(shí)候,你應(yīng)該考慮如何組合這四個(gè)步驟,使你的爬蟲達(dá)到效率最高,也就是所謂的爬蟲策略問題,爬蟲策略學(xué)習(xí)不是一朝一夕的事情,建議多看看一些比較優(yōu)秀的爬蟲的設(shè)計(jì)方案,比如說。 (一)如何學(xué)習(xí)Python 學(xué)習(xí)Python大致可以分為以下幾個(gè)階段: 1.剛上手的時(shí)候肯定是先過一遍Python最基本的知識(shí),比如說:變量、數(shù)據(jù)結(jié)構(gòu)、語法...
摘要:時(shí)間永遠(yuǎn)都過得那么快,一晃從年注冊(cè),到現(xiàn)在已經(jīng)過去了年那些被我藏在收藏夾吃灰的文章,已經(jīng)太多了,是時(shí)候把他們整理一下了。那是因?yàn)槭詹貖A太亂,橡皮擦給設(shè)置私密了,不收拾不好看呀。 ...
摘要:最近看前端都展開了幾場(chǎng)而我大知乎最熱語言還沒有相關(guān)。有關(guān)書籍的介紹,大部分截取自是官方介紹。但從開始,標(biāo)準(zhǔn)庫為我們提供了模塊,它提供了和兩個(gè)類,實(shí)現(xiàn)了對(duì)和的進(jìn)一步抽象,對(duì)編寫線程池進(jìn)程池提供了直接的支持。 《流暢的python》閱讀筆記 《流暢的python》是一本適合python進(jìn)階的書, 里面介紹的基本都是高級(jí)的python用法. 對(duì)于初學(xué)python的人來說, 基礎(chǔ)大概也就夠用了...
摘要:編程書籍的整理和收集最近一直在學(xué)習(xí)深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的東西,發(fā)現(xiàn)深入地去學(xué)習(xí)就需要不斷的去提高自己算法和高數(shù)的能力然后也找了很多的書和文章,隨著不斷的學(xué)習(xí),也整理了下自己的學(xué)習(xí)筆記準(zhǔn)備分享出來給大家后續(xù)的文章和總結(jié)會(huì)繼續(xù)分享,先分享一部分的 編程書籍的整理和收集 最近一直在學(xué)習(xí)deep learning深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的東西,發(fā)現(xiàn)深入地去學(xué)習(xí)就需要不斷的去提高自己算法和高數(shù)的能力然后...
閱讀 1866·2021-09-22 15:23
閱讀 3328·2021-09-04 16:45
閱讀 1997·2021-07-29 14:49
閱讀 2799·2019-08-30 15:44
閱讀 1568·2019-08-29 16:36
閱讀 1075·2019-08-29 11:03
閱讀 1553·2019-08-26 13:53
閱讀 533·2019-08-26 11:57