97超碰碰碰_91热播_91国产免费视频_91视频合集_国产精品白丝jk白祙_国产精品久免费的黄网站

您現在所在的位置:首頁 >常見問題 > 課程問題 > 只要你會中文 就能學會的Python面向對象的完整教程

只要你會中文 就能學會的Python面向對象的完整教程

來源:奇酷教育 發表于:

Python面向對象完整教程


  奇酷學員講師們專為小白編寫的Python面向對象的完整教程,在給大家分享之前呢!奇小酷推薦一個奇酷的交流圣地,里面都是一群熱愛并在學習Python的奇酷學員們,群資料也上傳了好多Python的課程視頻教程,里面的老師們積極解決小白的問題,這個Python群:514317840 歡迎大家進來一起交流討論,一起進步,讓奇酷成為你學習Python路上的摯友。



 

  簡介?

  面向對象、解釋型的編程語言。python3.x各方面更成熟,將來肯定是主流,python2.x處理速度更快點。python3.x簡潔、易學、幾乎全能、支持面向對象,越來越多公司用python3.x。??

  建議學python3.x??

  能做什么??

  數據分析與挖掘、黑客逆向編成、機器學習、網絡爬蟲、開發游戲、自動化運維、開發WEB項目。??

  python 安裝??

  python3.5.2 64位 穩定??

  官網 www.python.org(搜狗瀏覽器訪問,download windows )??

  管理員身份運行??

  customise??

  勾選2、3 1隨便 最后兩個不勾??

  設置安裝盤??

  advanced options (選creat、add)??

  設置環境變量---> 告訴系統python安裝在什么地方了??

  (比較慢、)??

  python語法基礎??

  輸出??

  輸出hellow world??

  輸入IDLE---> python??

  print(“要輸出的內容”)??

  shell一行一行執行。ctrl+N 多行執行??

  后綴名.py??

  注釋??

  #注釋法?

  三引號注釋法---英文輸入法下兩端輸入三個單引號或者多引號(前后要對應)?

  標識符??

  命名規則:第一個字符為字母或下劃線;除了第一個字的其他字符可以是字母、下劃線或數字。如_jh3ih/j_3hhf??

  變量??

  和標識符命名規則相同。??

  賦值=從右往左看??

  數據類型??

  默認數據類型:數、??

  字符串(a='abc'/a2="abc"/a3='''abc''')、?

  列表(list)---存儲多個元素[,隔開,從0開始編號]列表內元素可以賦值?

  、元祖(tuple)---()元祖內不可以重新賦值,取值和列表方式一樣、?

  集合(set)---=set{"字符串"}輸出{'','',....}---去重、集合運算?

  字典(dictionary)---{鍵:值,鍵:值.....}---d={"abc":6,"q":"daa"}。取值規則:字典名["對應鍵名"]--d["q"]輸出daa?

  運算符 +、-、*、/、%。基本的數學運算符的優先級規律在python上基本使用。實在不清楚優先級規律,為需要先執行的運算加上括號。+號可以進行字符串的連接---j="da",k="abc"+j--> k="abcda"?

  縮進??

  同一層次的代碼,處于同一個縮進幅度上,下一層次的代碼,需要相對于上一層縮進,使用tab縮進。??

  python控制流??

  三種控制流概述??

  順序結構?

  條件分支結構 if():/ elif():---else if:()/else:?

  循環結構?

  while --while():-->??

  for??

  便利列表--a=["qF","D","fd","d"] for i in a:-->?

  進行常規循環--for i in range(0,10)-->?

  中斷結構??

  break?

  全部直接退出,整個循環中斷??

  continue?

  中斷一次循環,繼續下一次循環??

  乘法口訣??

  for i in range(1,10) : ?

  for j in range(1,i+1):?

  print(str(i)+"*"+str(j)+"="+str(i*j),end=" ")?

  print()?

  end代表不換行輸出、注意python中縮進的含義,相同縮進代表相同層級??

  作業:逆向輸出乘法口訣(9-->1)?

  #逆向輸出乘法口訣??

  for i in range(1,10):?

  for j in range(1,11-i):?

  print(str(10-i)+"*"+str(11-j-i)+"="+str((10-i)*(11-j-i)),end=" ")?

  print()?

  for i in range(9,0,-1):?

  for j in range(i,0,-1):?

  print(str(i)+"*"+str(j)+"="+str(i*j),end=" ")?

  print()?

  函數??

  函數的本質是功能的封裝--def 函數名(參數)??

  局部變量與全局變量??

  作用域從變量開始到程序的最末的變量叫做全局變量,作用域只在局部的變量叫做局部分量。??

  函數內部定義的變量是局部變量,不能再外部輸出或調用。??

  函數參數的使用??

  函數定義的格式--def 函數名(參數)??

  def abc(): print("agg")??

  調用----輸入 函數名()??

  參數:與外界溝通的接口??

  形參?

  函數定義的時候使用形參??

  實參?

  函數調用的時候用實參??

  python模塊實戰??

  什么是python模塊??

  為了讓python程序實現更方便,可以根據需求類別將一些廠檢單功能(函數)組合在一起,形成模塊。以后要實現這一類功能的時候,直接導入該模塊即可,模塊里面的函數叫做模塊的方法。系統自帶的模塊在安裝目錄的lib目錄中。??

  模塊內的函數叫做模塊的方法。??

  模塊的導入??

  import模塊名?

  import cgi??

  cgi.closelog()??

  from...import...?

  from cgi import closelog??

  第三方模塊的安裝??

  模塊的類別??

  自帶模塊?

  第三方模塊(較常用)?

  pip方式?

  cmd---pip---網絡安裝??

  whl下載安裝?

  下載lfd python---sp35 amd64--下載另存d盤爬蟲--cmd--d:-cd 文件夾---pip install+下載文件全名(包括后綴)??

  直接復制?

  復制別人的安裝文件(電腦和python型號相同)html文件??

  anaconda?

  自定義模塊?

  在lib目錄下新建文件--??

  python文件操作??

  文件操作概述??

  直接使用對文件進行打開、關閉、讀取、寫入等操作,使用python可以自動對程序進行處理,比如合并多個Excel表格文件的內容。??

  文件操作實戰??

  文件打開?

  操作txt文件---新建txt文檔---寫入內容--如何用python讀取其中的內容--打開--open(文件地址,操作形式)--fh=open("D:/sdags/sgas","r")或fh=open("D:sdagssgas","r")---data=fh.read()--data--全部內容--fh.readline()---一行一行地讀??

  操作形式:w-寫、r-讀取、b-二進制、a追加??

  文件關閉?

  fh.close()打開了用完之后一定要關閉文件??

  文件寫入(w/a+)?

  data="dhaghhh"--open("文件地址","w")--fh2.write(data)--必須要先關閉寫入文件內容才會在文件中保存--fh2.close()--多次寫入只需一次文件關閉(如果用的是w-非追加寫入的話)??

  w寫入模式下每次關閉都會對內容進行更新替換,如果想每次寫完不替換原先的內容,可以用a+追加寫入模式。??

  python異常處理??

  概述??

  python程序在執行的時候,經常會遇到異常,如果中間異常不處理,經常會導致程序崩潰。比如后面我們寫爬蟲的時候,如果不進行異常處理,很可能蟲爬了一半,直接崩潰了。??

  目的是寫程序的過程中遇到異常可以跳過,不至于程序崩潰,增強程序的生命力。??

  異常處理實戰??

  在python中創建一個try文件---ctrl+n(new)--ctrl-a--寫一個程---制造異常---??

  異常處理格式??

  try:?

  程序?

  except Exception as 異常名稱:?

  異常處理部分?

  注意: try和except要對應,且縮進量保持一致;try和循環的嵌套關系變化可能帶來不同的處理結果。?

  python面向對象編程??

  概述??

  面向對象編程即OOP編程,區別于面向過程編程,面向對象編程比較適合開發大項目,會以更接近人類的思維角度去寫程序。??

  類和對象??

  類:具有某種特征的事物的集合(群體)??

  對象:群體(類)里面的個體??

  類是抽象的,對象是具體的---類的實例化??

  創造一個類:??

  class 類名:?

  類里面的內容?

  ...?

  class cl1:?

  pass?

  ...?

  實例化一個類??

  a=cl1()?

  ...?

  a即類(cl1)內對象??

  構造函數??

  類在實例化時自動首先觸發的函數:init(self,參數)--雙下劃綫,在類中的方法中必須加上self參數。??

  class cl2?

  def__init__(self):?

  print("hellow,welcome")?

  構造函數作用是初始化??

  給類加上參數---給構造方法加上參數??

  class cl3?

  def __init__(self,name,job):?

  print("my name is "+name+"my job is"+job)?

  輸入c=cl3("ag","aqw")--輸出my name is ag my job is aqw??

  屬性與方法??

  屬性: 靜態的特征。如頭發、手臂等??

  方法: 動態的特征。如唱歌、寫字等??

  類中屬性的定義和調用:self.屬性名??

  class cl4:?

  def __init__(self,name,job):?

  self.myname=name?

  self.myjob=job----定義類的屬性?

  輸入c=cl4("ag","aqw")--輸入myname--輸出ag--輸入myjob--輸出aqw--直接調用類的屬性??

  方法:類里面的函數def 方法名(self,參數)??

  class cl5:?

  def myfound(self):?

  print("aga")?

  實例化時不需要添加參數,調用的時候需要添加??

  class cl6:?

  def myfound1(self,name):?

  print("hellow"+" "+name)?

  調用類里面的方法:??

  c=cl6()------實例化?

  c.myfound("liuyong")---調用函數myfound()并加參數?

  輸出hellow liuyong??

  class cl7:?

  def __init__(self,name):?

  self.myname=name?

  def myfound1(self):?

  print("hellow"+" "+myname)?

  調用類里面的方法:??

  c=cl7("liuyong")------實例化即添加參數?

  c.myfound()---調用函數myfound()并加參數?

  繼承與重載??

  繼承: 把某一個或多個類(基類)的特征拿過來(單繼承、多繼承)??

  重載: 把子類(派生類)里面對繼承過來的特征重新定義??

  父類: 基類??

  子類: 派生類??

  案例講解??

  某一個家庭有父親、母親、兒子、女兒,父親可以說話,母親可以寫字,大兒子繼承了父親寫字的能力,女兒同時繼承了父母親、并且有能力聽東西,小兒子繼承了父親,但是優化(減弱)了父親說話的能力。??

  父親類(基類):??

  class father():?

  def speak(self):?

  print("I can speak")?

  單繼承類:class 子類(父類)??

  class son1(father):?

  pass?

  執行??

  s=son1()?

  s.speak()?

  ---I can speak?

  母親類:??

  class mother()?

  def write(self):?

  print("I can write")?

  多繼承:??

  class daughter(father,mother):?

  def listen(self):?

  print("I can listen")?

  執行??

  d=daughter()?

  d.speak()?

  ---I can speak?

  d.write()?

  ---I can write?

  d.listen()?

  ---I can listen----多繼承不影響新功能?

  重寫(重載):??

  class son2(father):?

  def speak(self):?

  print("I can speak 2")?

  執行??

  s=son2()?

  s.speak()?

  ---I can speak2---重名覆蓋?

  作業:??

  將多個Excel表格里面的內容合并到一個文件中。??

  要點:??

  使用第三方模塊操作,比如xlrd、xlwt;?

  注意使用循環;?

  一個Excel中有多個sheet,也需要合并。

  奇小酷非常希望大家能加入到奇酷的大家庭來,我們一起學習、一起進步,當然了,也祝大家學習Python的路上一路順風!

主站蜘蛛池模板: 国产精品日日做人人爱 | www久久爱com | 国产日韩欧美在线 | 日本一区精品 | 久久久久久欧美精品se一二三四 | 久久综合色区 | 日韩电影免费在线观看中文字幕 | 射久久久 | 四虎精品影院 | 特级一级毛片视频免费观看 | 日本一区二区三区四区无限 | 羞羞色男人的天堂 | 成人理论电影在线观看 | 国产成人无码18禁午夜福利p | 日本爽爽爽爽爽爽在线观看免 | 亚洲av乱码一区二区三区林ゆな | 午夜免费播放观看在线视频 | 国产中日韩一区二区三区 | 亚洲欧美国产视频 | 亚洲av成人精品网站在线播放 | 野外做受又硬又粗又大视频√ | 欧美疯狂做受xxxxx高潮 | 亚洲欧美在线综合一区二区三区 | 热99精品| 亚洲日韩av无码一区二区三区人 | 日日碰狠狠躁久久躁96avv | www.尤物在线| 九九九热精品 | 国产成人精品无码片区在线观看 | 青青草原综合久久大伊人 | 韩国福利一区 | 1级毛片| 国产日韩一区二区三区 | 国产女人aaa级久久久级 | 双腿张开被9个男人调教 | 美女高清特黄a大片 | 精品视频一区二区三区在线播放 | 太大太粗太硬好爽受不了视频 | 久久久久久伊人高潮影院 | 一二三四在线观看免费高清视频 | 欧美日韩一区二区中文字幕视频 |