python的程序结构_python之程序结构

1、控制结构

if a>b: #注释 ,多行注释可以用 '''多行注释'''

result=a-b

elif a

result=b-a

else:

result=0

while a<100:

if a==30:

continue

if a>50:

break

print(a)

pass #nop

while a<100:

print(a)

for eachnum in [1,2,3]:

print(eachnum)

def add(a=1,b=2):

return (a+b)

2、函数结构

def addnum (a,b=1,*c,**d): #位置参数,默认参数,元组参数,字典参数,顺序不能改变

print "a is "+str(a)+" b is "+str(b)

sum=a+b;

print "para in c"

for every_para in c:

print every_para

sum=sum+every_para

print "para in d"

for every_key in d.keys():

print every_key+" value "+str(d[every_key])

sum=sum+d[every_key]

return sum

#print addnum(1,2,3,4,key1=5,key2=6)

#单行函数可以用表达式表示

mulnum=lambda a,b=2:a*b

print mulnum(10)

3、类组织

class person:

"this is a person" #类文档

country="china" #类属性

def __init__ (self,name,age=28): #构造函数,用默认参数来实现函数重载

self.name=name #实例属性不用预先定义,实际上可以随时添加

self.age=age

def sayhello (self):实例方法,注意有self参数

print "hello,i am a person"

@classmethod

def sayhello (cls):

print "hello word "+cls.country

@staticmethod

def sayhello ():

print "hi word"

person1=person("justsong")

class student(person):

def __init__ (self,name,age=28,grade=3):

person.__init__(self,name,age)

self.grade=grade

student1=student("cy") #静态方法和类方法,属性都被继承

student1.sayhello()

#方法的查找顺序是 静态方法---类方法---实例方法

#属性的查找顺序是 实例属性---类属性---基类属性

4、模块组织

python的模块就是后缀为py或者pyc的python文件,python的包就是目录。

import sys

import mod2 #一个模块对应着一个文件,mod2.py必须位于搜索路径中的一个

#因为模块名和文件名相同,所以就依赖于文件系统来保证全局名称空间中模块名的唯一性

from mod3 import mod3_b#引入名称空间

import mod4 as m4 #模块别名,m4=mod4也可以

from subdir import mod5 #导入一个包实际上是导入了__init__.py

print "import path:"

for import_path in sys.path:

print import_path

print mod2.mod2_a

print mod3_b #已经把mod3导入到当前模块的命名空间

print m4.mod4_a

print mod5.mod5_a

5、异常处理

try:

#a=2/0

raise RuntimeError,"myfirsterror"

except ZeroDivisionError,err:#err为错误信息,之前为错误类型

print ZeroDivisionError,err

except RuntimeError,err:

print RuntimeError,err

finally:

print "good!"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值