天天看点

第十节:python异常处理、类

python个人笔记,纯属方便查询。

<code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>python异常处理</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code>

<code>try</code><code>:</code>

<code>        </code><code>name</code><code>=</code><code>[</code><code>'a'</code><code>,</code><code>'b'</code><code>,</code><code>'c'</code><code>]</code>

<code>        </code><code>name[</code><code>3</code><code>]</code>

<code>except</code> <code>IndexError:</code>

<code>        </code><code>print</code> <code>'you list is out of range.........'</code>

<code>意思是让原本的错误改成自己想要的错误提示。</code>

<code>        </code><code>#name[3]</code>

<code>        </code><code>info_dic</code><code>=</code><code>{}</code>

<code>        </code><code>info_dic[</code><code>'alex'</code><code>]</code>

<code>#except (IndexError,KeyError):</code>

<code>except</code> <code>KeyError:</code>

<code>        </code><code>print</code> <code>'The key error...............'</code>

<code>自定义异常:</code>

<code>class</code> <code>myexception(exception):</code>

<code>pass</code>

<code>raise</code> <code>myexception</code>

<code>name</code><code>=</code><code>raw_input</code><code>().strip()</code>

<code>if</code> <code>name !</code><code>=</code> <code>'darren'</code><code>:</code>

<code>except</code> <code>myexception:</code>

<code>print</code> <code>'no valid name specil!'</code>

<code>总是打印一个错误:</code>

<code>name</code><code>=</code><code>raw_input</code><code>()</code>

<code>if</code> <code>len</code><code>(name)</code><code>=</code><code>2</code><code>:</code>

<code>print</code> <code>'aaa.........'</code>

<code>else</code><code>:</code>

<code>print</code> <code>'bbb..........'</code>

<code>finally</code><code>:</code>

<code>print</code> <code>'going to shutdown........'</code>

<code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>python类</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code>

<code>类的语法:</code>

<code>class</code> <code>dog:</code>

<code>def</code> <code>name(</code><code>self</code><code>):</code>

<code>print</code> <code>"hello,master,my name is python!"</code>

<code>D</code><code>=</code><code>dog()    </code><code>#将类赋给D这个变量</code>

<code>D.name()   </code><code>#引用dog类下面的name方法。</code>

<code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code>

<code>#初始化函数:def __init__为初始化函数,函数里的第一个变量就是类的名字,等于把类Person传给self,</code>

<code>#!/usr/bin/env python</code>

<code>class</code> <code>Person:</code>

<code>        </code><code>def</code> <code>__init__(</code><code>self</code><code>,name,age):</code>

<code>                </code><code>print</code> <code>"i am being called right now"</code>

<code>                </code><code>self</code><code>.Name</code><code>=</code><code>name</code>

<code>                </code><code>self</code><code>.Age</code><code>=</code><code>age</code>

<code>        </code><code>def</code> <code>sayhi(</code><code>self</code><code>):</code>

<code>                </code><code>print</code> <code>"hi,my name is %s,my age:%s"</code> <code>%</code><code>(</code><code>self</code><code>.Name,</code><code>self</code>

<code>.Age)</code>

<code>p</code><code>=</code> <code>Person(</code><code>'darren'</code><code>,</code><code>22</code><code>)</code>

<code>p.sayhi()</code>

<code>##################################################</code>

<code>class</code> <code>Dog:</code>

<code>        </code><code>name</code><code>=</code><code>'hanxin'</code>

<code>        </code><code>print</code> <code>"hello,master,my name is python!"</code>

<code>            </code><code>print</code> <code>"my name is:"</code><code>,</code><code>self</code><code>.name</code>

<code>def</code> <code>saying(</code><code>self</code><code>,food):</code>

<code>if</code> <code>food </code><code>=</code><code>=</code> <code>'bone'</code><code>:</code>

<code>print</code> <code>'i like it very much'</code>

<code>print</code>  <code>"do not give me"</code>

<code>d </code><code>=</code> <code>Dog()</code>

<code>d.sayhi()</code>

<code>d.saying(bone)</code>

<code>#这里的类等于把dog传给self,self就是类。类下的多个函数是不能相互通信的,如果要通信要先传给类</code>

<code>#########################################</code>

<code>                </code><code>print</code> <code>"hello,master,my name is python!"</code>

<code>                </code><code>print</code> <code>"my name is:"</code><code>,</code><code>self</code><code>.name</code>

<code>                </code><code>likefood</code><code>=</code><code>'bone'</code>

<code>                </code><code>self</code><code>.likefood</code><code>=</code><code>likefood  </code><code>#把函数变量变为类变量</code>

<code>        </code><code>def</code> <code>saying(</code><code>self</code><code>,food):</code>

<code>                </code><code>if</code> <code>food </code><code>=</code><code>=</code> <code>self</code><code>.likefood: </code><code>#调用其他函数的变量这里不能直接调用,而是需要调用类变量才可以。</code>

<code>                        </code><code>print</code> <code>'i like it very much'</code>

<code>                </code><code>else</code><code>:</code>

<code>                        </code><code>print</code>  <code>"do not give me"</code>

<code>d.saying(</code><code>'bone'</code><code>)</code>

<code>########################################</code>

<code>#类的继承:</code>

<code>class</code> <code>schoolmember:</code>

<code>def</code> <code>__init__(</code><code>self</code><code>,name,sex,national</code><code>=</code><code>'china'</code><code>):</code>

<code>self</code><code>.name</code><code>=</code><code>name</code>

<code>self</code><code>.sex</code><code>=</code><code>sex</code>

<code>self</code><code>.national</code><code>=</code><code>national</code>

<code>def</code> <code>tell(</code><code>self</code><code>):</code>

<code>print</code> <code>"hi,my name is %s,i am from %s"</code><code>%</code><code>(</code><code>self</code><code>.name,</code><code>self</code><code>.national)</code>

<code>class</code> <code>student(schoolmember):</code>

<code>def</code> <code>__init__(</code><code>self</code><code>,NAME,SEX,CLASS,SCORE,NATIONAL):</code>

<code>schoolmember.__init__(</code><code>self</code><code>,NAME,SEX,NATIONAL)</code>

<code>self</code><code>.CLASS</code><code>=</code><code>CLASS</code>

<code>self</code><code>.SCORE</code><code>=</code><code>SCORE</code>

<code>def</code> <code>paytuition(</code><code>self</code><code>,amount):</code>

<code>if</code> <code>amount &lt; </code><code>6499</code><code>:</code>

<code>print</code> <code>"get the fuck off....."</code>

<code>print</code> <code>'welcome onboard!'</code>

<code>class</code> <code>teacher(schoolmember):</code>

<code>def</code> <code>__init__(</code><code>self</code><code>,NAME,SEX,COURSE,SALARY,NATIONAL):</code>

<code>self</code><code>.COURSE</code><code>=</code><code>COURSE</code>

<code>self</code><code>.SALARY</code><code>=</code><code>SALARY</code>

<code>def</code> <code>teachering(</code><code>self</code><code>):</code>

<code>print</code> <code>"i am teaching %s,i am makeing %s per month!"</code><code>%</code><code>(</code><code>self</code><code>.COURSE,</code><code>self</code><code>.SALARY)</code>

<code>s1</code><code>=</code><code>student(</code><code>'wangzhendong'</code><code>,</code><code>'man'</code><code>,</code><code>'python'</code><code>,</code><code>'A+'</code><code>,</code><code>'china'</code><code>)</code>

<code>s1.tell()</code>

<code>s2</code><code>=</code><code>student(</code><code>'darren'</code><code>,</code><code>'man'</code><code>,</code><code>'linux'</code><code>,</code><code>'a+'</code><code>,</code><code>'us'</code><code>)</code>

<code>s2.tell()</code>

<code>t1</code><code>=</code><code>teacher(</code><code>'darren'</code><code>,</code><code>'man'</code><code>,</code><code>'couse'</code><code>,</code><code>'7000'</code><code>,</code><code>'hanguo'</code><code>)</code>

<code>##############################################################</code>

本文转自 王家东哥 51CTO博客,原文链接:http://blog.51cto.com/xiaodongge/1877788