Python-编程例题

1.append()函数向列表中添加数据

list=[]
list.append(1)
list.append(3)
for i in list:
    print(i)

2.创建动物类

class Animal:
    count=0
    def __init__(self,name):
        self.name=name
        Animal.count =Animal.count+1

    def __del__(self):
        Animal.count=Animal.count-1

    def func(self):
        print(Animal.count)
animal1=Animal('zhangsan')
animal2=Animal('lisi')
animal1.func()

3.函数方法求圆的周长和面积

class Circle:
    _radius=0
    def SetRadius(self,_radius):
        self.radius =_radius

    def Area(self):#面积
        return 3.14 * self.radius * self._radius

    def _str_(self,):
        return "面积:%s"%self.radius

    def __gt__(self, other):
        print("这个圆的面积更大")

    def __del__(self):
        print('这是析构函数')
circle1=Circle
circle1.SetRadius(circle1,5)
a = circle1._str_(circle1)
print(a)
circle2=Circle
circle1.SetRadius(circle1,6)
circle2.__gt__(circle2,circle1)

4.创建保险类

class InsurancePolicy:
    def __init__(self,price_of_item):
        self.price_of_insured_item =price_of_item

class VehicleInsurance(InsurancePolicy):
    vehicle_Name=""
    price_of_insured_item=0
    def __init__(self,price_of_item):
        super(VehicleInsurance, self).__init__(price_of_item)

    def get_rate(self):
        return 0.001*self.price_of_insured_item

class HomeInsurance(InsurancePolicy):
    member_nuber=""
    price_of_insured_item=0
    def __init__(self,price_of_item):
        super(HomeInsurance, self).__init__(price_of_item)

    def get_rate(self):
        return 0.00005*self.price_of_insured_item
v=VehicleInsurance(5000)
print(v.get_rate())


5.创建学生类,要求有成绩和求平均分的函数

class Student:
    name=''
    grades = []
    def __init__(self,name,year):
        self.name=name
        self.year=year
        print("name:{}  year:{}".format(self.name,self.year))

    def add_grade(self,Grade):
        if(isinstance(Grade,int)):
            Student.grades.append(Grade)
        else:print("请输入数字!")

    def is_passing(self):
        for i in Grade:
            if(Grade[i]<Grade.passing):
                print("过过 过儿 过过的生活!")

    def show(self):
        for i in Student.grades:
            print(i)

    def get_average(self):
        i=0
        sum=0
        count=0
        for i in stu.grades:
            sum+=i
            count+=1
        return sum/count

class Grade:
    score=0
    passing=60
    def __init__(self,score):
        self.score=score

stu=Student('Jerry',5)

gra1=Grade(100)
gra2=Grade(90)
gra3=Grade(85)
gra4=Grade(88)
gra5=Grade(70)

stu.add_grade(gra1.score)
stu.add_grade(gra2.score)
stu.add_grade(gra3.score)
stu.add_grade(gra4.score)
stu.add_grade(gra5.score)
stu.show()
print(stu.get_average())

6.csv文件读取

 

lst = []
#空列表
with open('StudentInfo.csv', mode='r', encoding='gbk') as f:
    #mode--读操作
    line = f.readline().strip()
    #移除字符串头尾指定的字符(默认为空格或换行符)或字符序列
    #文件的读操作
    title = line.split(',')

    for line in f:
        dic = {}
        line = line.strip()
        data = line.split(',')
        for i in range(len(title)):
            dic[title[i]] = data[i]
        lst.append(dic)

print(lst)

7.csv文件写入

import csv
lis=[]
with open('user.csv','r')as f:
    reader=csv.DictReader(f,fieldnames=('name','uesername','email'))
    for i in reader:
        print(i)
        lis.append(i)
with open('usercopy.csv', 'w') as f:
    writer = csv.DictWriter(f, fieldnames=('name','uesername','email'))
    writer.writeheader()  # 写入头
    for i in lis:
        writer.writerow(i)
print('写入成功')

8.买蜡烛

class OutOfStack(Exception):
    def __init__(self, msg):
        self.msg = msg

    def __str__(self):
        return self.msg


class CandleShop:
    name = "Here's a Hot Tip: Buy Drip Candles"

    def __init__(self, stock):
        self.stock = stock

    def buy(self, color):
        if self.stock[color] <=0:
            raise OutOfStack('-No-Candle-!-')
        else:
            self.stock[color] = self.stock[color] - 1


candle_shop = CandleShop({'blue': 6, 'red': 2, 'green': 0})
try:
    candle_shop.buy('green')
except OutOfStack as e:
    print(e)

9.简易版爬虫

from urllib.request import urlopen

def func():
    #获取网页内容
    content = urlopen('https://www.jd.com/').read()
    def inner():
        return content.decode('utf-8')
    return inner

print('第一次打开,请求网络')
ret = func()
print('请求结束')

print('第一次使用', ret()[10])
print('第二次使用', ret()[10])

10.多个装饰器装饰一个函数

def deco2(fn):
    def inner(*args, **kwargs):
        print('deco2 begin')
        ret = fn(*args, **kwargs)
        print('deco2 end')
        return ret
    return inner

def deco3(fn):
    def inner(*args, **kwargs):
        print('deco3 begin')
        ret = fn(*args, **kwargs)
        print('deco3 end')
        return ret
    return inner

@deco1
@deco2
@deco3
def func():
    print('func')

func()
#装饰的就近原则,1 2 3 func 3 2 1

仅供参考!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值