說在前:這個系列主要是我自己在網上學習的一些筆記、方法以及思考叭,一直感覺在網上看知識類視頻,作為所謂的學習產出率是在太低了,低效的方式連最底層的自我安慰都難以做到,總覺得實際是在浪費時間,因此決定把學習筆記整理出來,既是進一步的對學習內容進行消化理解,之後在需要所學內容的時候也能夠及時找到方法,如果有幸你看到這些筆記也能收穫到一些東西的話那就更好啦!然後筆記整理的過程我現在是從手寫關鍵詞+疑問點——幕布整理——word加上一些理解的備註(藍字的部分)——複製粘貼,之後也可能會適當調整,選擇最節省時間成本性價比最高的方式叭,希望之後能一直分享下去,還有arcgis、數據分析、城市認知等等方面。
● 第一章:python基本語法元素
● 1.1程序設計基本方法
● 摩爾定律
● 計算機發展歷史上最重要的預測法則,單位面積集成電路可容納電晶體的數量約為兩年翻一番,計算機的發展參照摩爾定律,表現為指數方式。意思就是計算機發展的很迅速。
● 代碼的類型
● 原始碼與目標代碼
● 前者人可讀,後者人不可讀
● 從原始碼轉化為目標代碼——通過編譯器、解釋器來進行
● 通過編譯器的生成靜態語言(C、Java),通過解釋器的動態語言(python、JavaScript)
● 編譯和解釋的差距在於一個是前者是一次性到位的,可以直接把原始碼轉化為目標代碼,後者則是一步一步的,配合程序的輸入進行的。
● IPO:程序的基本編寫方式
● input progress output 應該能看懂吧 輸入 處理和輸出 三個步驟,也就是列式 計算 最後得結果
● 1.4Python程序語法元素分析
● 縮進:一行代碼開始前的空白區域,表達程序的格式框架
● 嚴格明確、所屬關係(表達代碼間包含與層次關係的唯一手段)、長度一致
● 注釋 # 在想要標註的內容前面加上#就可以啦,不參與程序的運算,單行備註,所以如果要多行備註話看下面 用三引號來進行多行備註
● 多行注釋 三引號「"」
● 命名與保留字
● 標識符:是用戶編程時使用的名字,用於給變量、常量、函數、語句塊等命名,以建立起名稱與使用之間的關係。數字、字母、下劃線、中文都可以
● 命名不能為保留字,一共有35個保留字 我反正沒記住
● 首字符不能是數字
● 大小寫敏感,例if是保留字,但可以用IF命名
● 變量:程序中用於保存和表示數據的佔位符號
● = 向變量賦值 賦值符號 這裡說一下=和==的運用是不一樣的,前者是賦值符號,表示等號右邊的把數據以及數據的類型賦給等號左邊的變量,但==是運算符號,就是普遍意義上我們用的等號
● 數字類型
● 字符串
● 用單引號或雙引號表示
● 有序序列,可以索引,但不能增刪
● 正向遞增序號從零開始 反向遞減序號從-1開始
● 整數
● 浮點數
● 列表
● 由零個或多個數據組成的有序序列
● 用in來判斷一個元素是否在列表中
● 語句和函數
● 賦值語句
● 就是變量+賦值符號 等號唄
● 右邊的數據以及數據類型都被賦予了變量
● 分支語句
● 由判斷條件決定程序運行方向的語句
● 一般保留字後面都有:
● 函數
● input()
● 從控制臺獲取輸入的函數 我最開始反正沒有理解這個input 後來明白了 這個input其實就是等著外界來輸入數據,強調!輸入的數據賦予變量後都是字符串的類型
● print()
● eval()
● 評估函數 去掉最外側的引號並執行餘下的語句 比如把字符串外面的單引號或雙引號去掉,那就變成了數字類型,那如果是三引號的去掉最外面的引號,那還剩下一個單引號,不能夠表示為數據類型哦,用於把字符串類型轉變為數字類型還是蠻方便的,也可以直接用int()、float()把它轉化為整數和小數類型
● 字符串格式化
● {:.2f}.format(變量)
● {}意味著槽,即把變量填到裡
● {:.2f}表示保留兩位小數,2是兩位,f表示浮點型
● 哦對,如果要輸出字符串格式,那引號應該放在.format前面,例如「{:.2f}」.format
● 補充一下索引和切片(針對字符串)
● 索引 字符串[1] 表示取第二個數據
● 切片 字符串{1:4}表示取第二個到第四個數據 包括前面的序號,不包括後面的序號
● 一些省略 切到最後一位的話{1:} 從第一位開始切{:4},以及隔兩位切一個{1:4:2}
● 1.5溫度轉化實例代碼
溫度的刻畫有兩個不同體系:攝氏度(Celsius)和華氏度(Fahrenheit)。請編寫程序將用戶輸入華氏度轉換為攝氏度,或將輸入的攝氏度轉換為華氏度。轉換算法如下:(C表示攝氏度、F表示華氏度)C = ( F - 32 ) / 1.8 F = C * 1.8 + 32
(1) 輸入輸出的攝氏度可採用大小寫字母C結尾,溫度可以是整數或小數,如:12.34C指攝氏度12.34度;(2) 輸入輸出的華氏度可採用大小寫字母F結尾,溫度可以是整數或小數,如:87.65F指華氏度87.65度;(3) 輸出保留小數點後兩位,輸入格式錯誤時,輸出提示:輸入格式錯誤;(4) 使用input()獲得測試用例輸入時,不要增加提示字符串。
● #TempConvert.py
● TempStr = input() 把外界輸入的數據賦予變量TempStr,並且變量的類型為字符串
● if TempStr[-1] in ['F', 'f']: 判斷是否是華氏度
● C = (eval(TempStr[0:-1]) - 32)/1.8 把華氏度轉化為攝氏度
● print("{:.2f}C".format(C))
● elif TempStr[-1] in ['C', 'c']:
● F = 1.8*eval(TempStr[0:-1]) + 32
● print("{:.2f}F".format(F))
● else:
● print("輸入格式錯誤")
● 練習題
● 數字類型轉換
● 把阿拉伯數字轉換為漢字數字 輸入的數據為123,輸出應為一二三(例子)
● name="零一二三四五六七八九"
● i=input()
● for c in i :
● b=eval(c)
● print(name[b],end="")
● 複習函數
● 循環函數 for C in I:
● 從第一位開始循環操作,到最後一位
● print()中增加end=""參數表示輸出後不增加換行,多個print()可以連續輸出。
● Hello World的條件輸出
● 獲得用戶輸入的一個整數,參考該整數值,列印輸出"Hello World",要求:
● 如果輸入值是0,直接輸出"Hello World"
● 如果輸入值大於0,以兩個字符一行方式輸出"Hello World"(空格也算字符)
● 如果輸入值小於0,以垂直方式輸出"Hello World"
● n = eval(input())
● if n == 0:
● print("Hello World")
● elif n > 0:
● print("He\nll\no \nWo\nrl\nd")
● else:
● for c in "Hello World": print(c)
● 關注點
● 兩個字符一行用\n(轉義字符,表示換行)
● 垂直輸出,用循環函數for in