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