python抽象

1)函数
def hello(greeting,name):
print ‘%s,%s’ % (greeting,name)
hello(‘hi’,’yangwenbin’) —-hi,yangwenbin

**2)参数
关键字参数:**
def hello(greeting,name):
print ‘%s,%s’ % (greeting,name)
hello(name=’yangwenbin’,greeting=’hi’) —-hi,yangwenbin

位置参数:(下面 time属于位置和关键字参数一起使用时,应把位置参数放在前面)
def hello(time,greeting=’hi’,name=’yangwenbin’):
print ‘%s,%s,%s’ % (time,greeting,name)
hello(‘mar’) —-mar,hi,yangwenbin

3)收集参数 关键字‘*’收集其余的位置参数(返回一个元组)
(能提供任意数量的参数)
def store(title,*param):
print title,param
store(‘name:’,’yangwenbin’,’lisi’) —name: (‘yangwenbin’, ‘lisi’)

‘**’处理关键字参数的‘收集’操作 (返回一个字典)
def store(title,**param):
print title,param

store(‘age:’,yangwenbin=’23’,lisi=25) —-age: {‘yangwenbin’: ‘23’, ‘lisi’: 25}

#

def store(title,*par,**param):
print title,par,param
store(‘age:’,’yangwenbin’,’lisi’,yangwenbin=’23’,lisi=25) —age: (‘yangwenbin’, ‘lisi’) {‘yangwenbin’: ‘23’, ‘lisi’: 25}

4)作用域
局部变量与全局变量

函数中全局变量的访问(global关键字)
x=1
def change():
global x
x=x+1
print x
change()

5)递归
def factorial(n):
if n==1:
return n
else:
return n*factorial(n-1)
a=factorial(3)
print a

#

def power(x,n):
if n==0:
return 1
else:
return x*pow(x,n-1)
a=power(2,3)

6)类的创建
class Person:
def setname(self,name):
self.name=name
def getname(self):
return self.name
def greetname(self):
print “hello i am %s” % self.name
foo=Person() #实例化一个对象
foo.setname(‘yangwenbin’) #访问成员方法
a=foo.getname()
print a
foo.greetname()
foo.name=”lisi” #访问成员特性
foo.greetname() —-yangwenbin hello i am yangwenbin hello i am lisi

7)python 的私有方式
(为了让方法的或者特性变成私有,无法从外部访问,只要在它的名字之前加上双下划线即可)

class Person:
def setname(self,__name):
self.__name=__name
def __getname(self):
return self.__name
def greetname(self):
print “hello i am %s” % self.__name
foo=Person()
foo.setname(‘yangwenbin’)
a=foo.__getname()
print a —会报错,因为__getname() 已经私有化 外部不能访问

8)类的命名空间
class memberCount():
members=0
def init(self):
memberCount.members+=1
m1=memberCount()
m1.init()
m1.init()
print m1.members,memberCount.members —2 2

9)指定超类—继承 (eval用于求值,计算python表达式,并返回结果值如:eval(1+2+3)返回值6)
class Caculate: #基类1
def caculate(self,expession):
self.value=eval(expession)
class Talker: #基类2
def taker(self):
print “my value is”,self.value

class TalkingCalculator(Caculate,Talker): 子类
pass

tc=TalkingCalculator()
tc.caculate(‘1+2+3’)
tc.taker()

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值