Python基礎-関数知識点2

4747 ワード

例1
f=open('aa.txt','r')               #a.txt  ,1,2,3,4,5,6,7,20,21
c=f.readline()
while len(c)>0:
    for d in eval(c):
        if d%5==0 or d%7==0:
            print(d)
    c=f.readline()
f.close()

例2 aa.txtファイル:{‘name’:‘張三’,‘score’:[1,2,3,4]}(1,2,34)1+3 3 3*(5+1)(1+3*2,7)
f=open('aa.txt','r')
content=f.readlines()#         
for line in content: #    
    if line[-1]=='
': #
t=line[:-1] #
else: t=line # ,
lst=t.split(',')# for i in lst: # if int(i)%5==0 or int(i)%7==0:# 5 7 print(i) f.close()

例3(用例2のファイル)
 f=open('aa.txt','r',encoding='utf-8')
    d=eval(f.readline())
    print(d,type(d))
    print(d['score'],type(d['score']))
    d=eval(f.readline())
    print(d,type(d))
    d=eval(f.readline())
    print(d,type(d))
    d=eval(f.readline())
    print(d,type(d))
    d=eval(f.readline())
    print(d,type(d))
    f.close()

例4
class Student():
    ID=0
    name=''
    address=''
    def say(self):
        print(self.ID,self.name,self.address)

zs=Student()
zs.ID=1001
zs.name='  '
zs.address='  '
zs.say()

ls=Student()
ls.ID=1002
ls.name='  '
ls.address='  '
ls.say()

例5
class Student():
    count=0
    def __init__(self,name,age):
        self.name=name
        self.age=age
        self.address='  '
        self.tell=1234
        Student.count+=1
    def say(self):
        print(self.name,self.age)

zs=Student('  ',18)
print(zs.name,zs.age,zs.address,zs.tell)
zs.say()

ls=Student('  ',28)
print(ls.name,ls.age,zs.address)
print(Student.count)

例6
class Student():
    def __init__(self,name):
        self.name=name
    def say(self):
        print(self.ID,self.sex)
zs=Student('  ')
zs.ID=1001
zs.sex=' '
zs.say()

例7
class Student():
    def __init__(self,name):
        self.name=name
    def say(self):
        print(self.ID,self.sex)
    def hehe(self):
        self.ID = 1001
        self.sex = ' '
zs=Student('  ')
zs.hehe()
zs.say()

例8
class Student():
    def hehe(self,name):
        self.name=name
    def haha(self):
        self.hh=1002
    def p(self):
        print(self.zhu)

zs=Student()
zs.hehe('  ')
print(zs.name)
zs.zhu='  '
zs.p()

例9
class Student():
    count=0#   ,       
    def __init__(self,name,age,sex):#   
        self.name=name #      name
        self.age=age
        self.sex=sex
        Student.count+=1
    def say(self):
        print(self.name,self.age,self.sex)

zs=Student('  ',10,' ')
ls=Student('  ',20,' ')
zs.say()
ls.say()
print(Student.count)
print(zs.count)
print(ls.count)

例10
class Student():
    count=0#   ,       
    def __init__(self,name,age,sex):#   
        self.name=name #      name
        self.age=age
        self.sex=sex
        Student.count+=1

zs=Student('  ',10,' ')
ls=Student('  ',20,' ')

zs.count=10
ww=Student('  ',18,' ')

print(Student.count)
delattr(zs,'count')  #    
print(zs.count)
print(ls.count)

例11
class Student():
    def __init__(self,name):
        self.name=name
zs=Student('  ')
print(zs.name)
delattr(zs,'name')
print(zs.name)    #       

例12
class Student():
    count=5
    def __init__(self,name):
        self.name=name

    @classmethod  #         
    def haha(cls):   #           
        print(cls.count)
    def say(self):
        print(self.name)

s=Student('  ')
Student.haha()
s.say()
s.haha()
Student.say()

例13
class Student():
    count=5
    def __init__(self,name):
        self.name=name

    @staticmethod
    def hx():
        print('       ,           ')

zs=Student('  ')
Student.hx()
zs.hx()

例14
class Student():
    count=5
    def __init__(self,name):
        self.name=name
    @staticmethod
    def hx():
        print('       ,           ')
    @classmethod
    def cmethod(cls,cs1,cs2):
        print(cls.count*cs1*cs2)
    @staticmethod
    def smethod(cs1,cs2):
        print(cs1*cs2)
    def omethod(self,n):
        print(self.name*n)
s=Student('  ')
Student.cmethod(3,4)
Student.smethod(3,4)
s.omethod(2)