路飛學城-Python開發集訓-第一章

第一天  2018/5/25
Python生態圈
    1.web開發  Django框架
    2.人工智能
    3.雲計算
    4.金融量化分析、自動化貿易
    5.爬蟲    定向抓取相關網頁資源
    6.自動化運維
    7.科學運算
    8.遊戲開發
 
 
 
2018/5/28
編程語言介紹
 
1.寫讓計算機識別的語言,就是編程。是怎樣將 易懂的人的語言 讓識別二進制的計算機認識?
 
機器語言
 
彙編語言
 
高級語言
 
       不一樣高級語言,轉二進制方式不一樣。兩種本質區別:一種編譯型,編程完再轉二進制,運行速度快,跨平臺能力差, C、C++;一種解釋型,寫一句轉一句,運行效率低,不生成二進制文件,可跨平臺,開發效率高,Python、Java。
問題:1 跨平臺,在 部署時、使用時是怎麼理解
          2 解釋器 eclipse和安裝的Java 哪一個是解釋器?
 
 
2018/5/29
Python發展史
龜叔
 
CPython 是經常使用的Python解釋器   用C語言開發的python
python3.0以上是如今使用的。2.x正在淘汰
 
2018/5/30
Python安裝
windows版
我選擇了windows版的3.6.5版本,下載安裝在臺式機
C:\Users\helinying\AppData\Local\Programs\Python\Python36
 安裝速度比較快,比JAVA快得多
 
第一個python程序的運行
windows版 在cmd裏不能直接運行 python命令,須要先設置環境變量,path=C:\Users\hly\AppData\Local\Programs\Python\Python36。就能夠在交互器裏 輸入 Python 查看版本。 交互器是用來對代碼調試做用,嘗試一下語句的使用是否正確。
 
linux版
linux自帶python2.7.5。若是想裝python3+版本再下載。我下載的tgz格式的壓縮包    
tar zxvf Python-3.6.5.tgz -C /python
此時 我在終端輸入 python3 未能識別,還不能用。
百度還需安裝依賴環境等工做,未作
 
===============================================================
 
2018/6/4
變量與變量的做用 :變量variables,臨時存放store在內存中供後面調用 manipulated
變量的定義規範
      聲明變量   name = "xiaohe"    
     id( name  )  能夠查看變量的內存地址
python 官方建議 使用下劃線命名規則 age_of _oldboy = 50
常量使用 字母所有大寫的方式 表示 (約定俗成)

以單下劃線開頭 _foo 的表明不能直接訪問的類屬性,需經過類提供的接口進行訪問,不能用 from xxx import * 而導入;java

以雙下劃線開頭的 __foo 表明類的私有成員;以雙下劃線開頭和結尾的 __foo__ 表明 Python 裏特殊方法專用的標識,如 __init__() 表明類的構造函數。python

 
2018/6/5
交互和註釋
user_name =  input("username:")
print("Hello"+user_name )
 
數據類型-基本類型
python 聲明變量的時候 不須要定義數據類型。想要查看對象的類型時 能夠用 type(o)
python3裏沒有long了,都是int
python中加了引號的字符都被認爲是字符串。單引號、雙引號沒有區別,只用來區分一句中引號。字符串多行 要用多引號(三個引號)
python中字符串相加/拼接 必須類型都爲字符串,不能與數字或其餘類型相加。
除了能夠相加,還能夠乘數字,如5,表示同一字符串拼接5次。
布爾類型   if a<b print ("")   else print("")  沒有大括號
 
2018/6/6
(sublime裏 Ctrl+shift+d 複製當前代碼行到下一行)
(pycharm裏 Ctrl+Alt+↓ 複製當前代碼行到下一行)
  ctrl+D 刪除當前行
多行語句
使用斜槓( \)將一行的語句分爲多行顯示
total = item_one + \
        item_two + \
        item_three
語句中包含 [], {} 或 () 括號就不須要使用多行鏈接符     
days =['Monday','Tuesday','Wednesday','Thursday','Friday']
格式化輸出
 
 
 
==
引號 若不跨行 可以使用一個單引號或雙引號,' ' %(參數1,參數2,參數3……)
%s 表明此處佔位符 表示string類型。還可爲%d (digit)、%f(float)
age = int ( input("Age:") )  // 類型轉換   input 返回的內容永遠爲字符串
 
indentationError  :縮進錯誤  。python句子開頭不可隨便加空格。   syntaxError:語法錯誤。AttributeError:訪問未知屬性,多是文件名命名與引入文件相同
 
2018/6/7
運算符  :算數運算、比較運算、邏輯運算、賦值運算等
算數運算    +, - , * ,  / ,  %取模(獲得除法的餘數),能夠經過a%2爲0或1,判斷a的奇偶性;冪 ** ,如2**3 爲8;//整除,10//3 爲3;   
賦值運算  =,    c+=a 等同於 c=c+a,同理 -=,*=, /=, %= , c -= a (c = c-a ) ,c /=a (c = c/a)  c在前面
比較運算  ==,  != , <, > , <= , >= ; 
邏輯運算   and , or , not 
 
單雙分支(流程控制)
單分支語法:  
if 後面的頓號,下面的一個tab空格!
python 句尾通常也不寫分號;兩句放一行須要寫,但通常不要放一行。
 
雙分支語法:   注意此處 else拼全了,後面不能再跟條件,直接冒號的。
 
 
此處有用戶密碼 登陸 的編程講解  09分
 
2018/6/11
多分支語: 注意 爲 elif,最後一個無條件的是else
if 條件:若是什麼也不想作,能夠pass ,繼續執行下面的語句
 
while循環語句    (循環語句還有  for  name    in  names,以及將for 和 while嵌套使用的循環)
while 條件:
     xxxxxxx     當while條件成立時執行,通常會有自加的語句,count +=1,會讓執行一段時間後中止
 
2018/6/12
continue  vs break  循環終止語句 
break徹底終止跳出循環體,continue 終止本次循環,繼續執行後面的循環
死循環 可以使用Ctrl+C終止
 
python專有   while ...else 語句   for循環 也有else 
while後面的else是指,當 while循環正常執行完,中間 沒有被break終止, 就會執行else後面的語句
 
開發工具 pycharm
功能:     ,後兩個功能須要用professional版(收費)
用它建立文件夾 --Directory,建立文件 --Python File.。   console,terminal,run,debuge功能區
 
個人安裝過程:
官網進入,點擊download,兩個版本,先 選擇community 下載
 
安裝選項,Create Associations是否關聯文件,選擇之後打開.py文件就會用PyCharm打開。Create Desktop Shortcut建立桌面快捷方式,一個32位,一個64位,64位系統選擇64位。勾選Download and install JRE x86 by JetBrains,會下載安裝JetBrains版的x86 JRE運行環境,沒有安裝的,能夠選擇勾選。
 
我沒選下載JRE,之前安裝java 時候裝過,如今還須要麼?
 
 
 
2018/6/13-6/15
熟練pycharm和完成第一章做業
列表    數據類型-數據集  
1,建立    使用[] 、‘’單引號或雙引號  和,
 
2.查詢
len()可查看列表長度 len(L2)
 
3, 切片 取列表中間的一部分  
    L2[0:3] 0和3中間爲冒號,表示取列表中序列從0到2的值 ['a','b','c'](顧頭不顧尾),也可寫爲L2[:3]從頭取冒號前面可不寫,從尾取,冒號後面可不寫,如 L2[-3:] 的值爲 ['e',1,2] 
    方括號還可使用第二個冒號,表示步長。如 L2[:3:2] 的值爲  ['a','c']   每兩個/隔一個取值
    
 
4,增長,修改,刪除元素
追加 .append('') 一個參數   如L2.append('3')會 加到L2結尾
插入 .insert(index,'')  兩個參數如 L2.insert(0,3) 將3加入索引爲0的位置
修改 直接賦值  L2[2]=3   則L2變爲 ['a','b',3,'d','a','e',1,2]
批量修改   L2[1:3] = 'AB CD'  左右兩邊的數量能夠不一致,能夠將後邊全部元素放到左邊所選的位置,可能會增長或減小列表數量   此時 L2 = ['a','A','B',' ','C','D','d','a','e',1,2]
刪除   .pop() 無參數 值爲最後一個元素,並將列表中最後一個元素刪除L2.pop()爲2,此時 L2 爲['a','b','c','d','a','e',1]
          .remove('') 一個參數 移除遇到的第一個元素  L2.remove('a')  L2=['b','c','d','a','e',1,2]
           del L2[2]  L2=['a','b','d','a','e',1,2]     del L2[2:5]     del L2
          .clear() 無參數 清空列表  L2.clear()  L2 = []
5, 循環、排序
    循環   for i in L2:                        i爲此處聲明的一個臨時變量,將L2中每一個值依次賦給i
                    print("i")    
   rang(10)  建立了0-9的列表   
   排序  .sort() 無參數,當列表中元素類型同樣是,從小到大排序         
           .reverse()   把當前列表原地倒轉 reverse後返回列表自己可看到
6,列表拼接
n1+n2  或者 n1.extend(n2)          
 
7,其餘 
.copy()   b = a.copy()  將b=a是將b指向了a指向的地址,a若是從新被賦值指向其餘地址,b爲原地址不受影響,而集合中若是隻改變 裏面的元素,地址未變,b也會跟着被改變 .而使用copy(),則a,b無關,只是將b同樣的值賦給了a,改變b不影響a
此爲 淺copy  可查看代碼深淺copy
import copy
copy.deepcopy( names)  此爲深copy
 
enumerate(list)    枚舉  成爲(索引,元素)的集合
        結果:
 
  結果:
 
.isdigit()  判斷是否爲數值
 
 
2018/6/15
二進制
十進制數轉二進制 bin(十進制數)  =0b+ 二進制數   0b表明二進制
 
ASCII碼
計算機將ASCII碼與十進制數0-255作了對應表   ASCII碼錶
因此文字能夠進行二進制轉換。 每一個字符佔8位(bit比特),一共能夠表示256個
 
GB2321  國標碼 簡體中文 收錄漢字6763個
GBK  繁體和簡體,收錄漢字2萬多
Unicode國際編碼,支持多國語言 全部字符(包括英文)佔兩字節
UTF-8 讓ascii碼的字符佔1個字節,歐洲字符佔兩個字節,東亞(中文)三個字節
 
python2 默認爲ASCII碼,python3默認爲UTF-8,因此用python2 編譯帶中文代碼時,須要改變默認語言
具體能夠查看
# -*- coding: UTF-8 -*-
 
2018/6/16
引入其餘源
from  decimal import *      從decimal庫引入全部
getcontext(). ....  設置源參數   
 
浮點數     python和JavaScript同樣,直接定義超長精度小數會不許確,能夠用分數代替
 
注意  不要將python代碼文件命名爲python預留字,模塊名等。特別不能與import 文件名同樣
容易出現 AttributeError: ‘module’ object has no attribute ‘ArgumentParser’  此樣錯誤
 
 
2018/6/21
字符串 深刻講解   數據類型 - 基本型  
特性:有序、不可變
pycharm 一樣能夠點 alt+鼠標點擊,進入方法 ,可查看python源碼,查看各類方法的解釋
s.capitalize() 首字母大寫,其餘小寫
s.casefold() 忽略大小寫即全小寫
s.find('o',0,5) 在0到5序號位上查找字母O,有則返回位置,無則返回-1
s.expandtabs() 控制tabs/空格數量
s.format()用法 見下圖
 
 
直播課
學習方法:輸入+輸出+糾正
相關文章
相關標籤/搜索