python(函数,lambda,oop)

一、使用函数变量

#定义一个计算乘方的函数
def pow(base,exp):
    result =1
    for i in range(1,exp+1):
        result *=base
    return result
#将pow函数值赋给fun,则fun可被当成pow使用
fun=pow
print(fun(2,4))

#定义一个计算面积的函数
def area(width,height):
    return width*height
#将area函数赋值给fun,则fun可被当称area使用
fun=area
print('面积为:%d'%(fun(3,4)))

二、使用函数作为函数形参

def map(data,fn):
    result=[]
    for e in data:
        result.append(fn(e))
    return result
#定义一个计算平方的函数
def square(n):
    return n*n
#定义一个计算立方平方的函数
def cube(n):
    return n*n*n
#定义一个计算阶乘的函数
def fac(n):
    result=1
    for i in range (2,n+1):
        result *=i
    return result
data =[3,4,5,6,7]
print('原数据')
print(data)
print('计算数组元素的平方')
print(map(data,square))
print('计算数组元素的立方')
print(map(data,cube))
print('计算数组元素的阶乘 ')
print(map(data,fac))

三、lambda表达式

#传入计算平方的lambda表达式作为参数
x=map(lambda x:x*x,range(8))
print([i for i in x])

#传入计算平方的lambda表达式作为参数
y=map(lambda x:x*x if x%2 ==0 else 0,range(8))
print([e for e in y])

四、类、对象

class Employee:
   '所有员工的基类'
   empCount = 0
 
   def __init__(self, name, salary):
      self.name = name
      self.salary = salary
      Employee.empCount += 1
   
   def displayCount(self):
     print (Employee.empCount)
 
   def displayEmployee(self):
      print(self.name,self.salary)

#"创建 Employee 类的第一个对象"
emp1 = Employee("Zara", 2000)
#"创建 Employee 类的第二个对象"
emp2 = Employee("Manni", 5000)
emp1.displayEmployee()
emp2.displayEmployee()
print(Employee.empCount)
class Employee:
    def __init__(self, name='猴子', addr='花果山'):
        self.name=name
        self.addr=addr
    def say(self):
        print('吃俺老孙一棒')

hz=Employee()
print(hz.name,hz.addr)
hz.say()
class Inventory:
    item='鼠标'
    quantity=2000
    #定义实例方法
    def change(self,item,quantity):
        #定义新的实例变量
        self.item=item
        self.quantity=quantity
#创建对象
iv=Inventory()
iv.change('monitor',300)
#输出的是实例变量的值
print(iv.item)
print(iv.quantity)
#访问类变量
print(Inventory.item)
print(Inventory.quantity)

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值