Python 对象篇--参考《从Python开始学编程》

Python是现在流行的一种编程语言。而且越来越受到国内与国外大学专业的喜欢,并一改教授C语言、Java的传统。
1.test.py

# coding=utf-8 
def square_sum(a,b):
    """你好,我是square_sum函数"""
    a = a**2
    b = b**2
    c = a + b
    def s(a,b):
      a = a**2
      b = b**2
      c = a + b
      print("ffffffff")
    print(s(1,2),c)
def package_position(*all_arguments):#在变量名前的“*”代表列表对象,例如package_position(1,2,3,4,5)
    print(type(all_arguments))
    print(all_arguments)
def package_position0(**all_arguments):#在变量名前的“**”代表词典对象,键值对形式例例如package_position0(a=1,b=2,c=3,d=4,e=5)
    print(type(all_arguments))
    print(all_arguments) 
a=5

2.类的创建

# coding=utf-8 
from test import  square_sum
class Bird(object):#object为最大的父类,各个类默认属于该Object类的子类
    """你好我是鸟类,我是比较抽象的类"""
    feather = True
    reproduction ="egg"

    def previous_chirp(self,sound):#第一个参数为self,是为了在方法内部引用对象自身,在调用该函数时,不需要显式赋值
         print(sound)

    def set_color(self,color):
        self.color = color;#self 可以调用类属性如color ,在类中定义的函数第一个参数必须为self。

    def chirp_repeat(self,sound,n):
        for i in range(n): #循环n次,取值情况:不包含n,是从0开始到n-1结束
            self.previous_chirp(sound)#self 也可以调用方法previous_chirp

    def __init__(self,sound):#init为构造函数,在创建类的时候,会首先调用此方法
        self.sound = sound
        print("my sound is:",sound)

    def chirp(self,sound):
        self.sound = sound
        print(self.sound,"你好")

 #定义小鸡类,继承Bird的方法和属性       
class Chicken(Bird): #继承Bird的方法和属性
    """
                你好我是鸡类,我是鸟类的子类
    """

    how_to_move ="walk"
    reproduction ="stock" #覆盖Bird的属性,需要使用super()
    edible = True
    def chirp(self): #覆盖Bird的方法,若想用Bird,需要使用super()
        super().chirp("dd")
        print("jiddd", super().reproduction) #此处super().reproduction为egg

#定义天鹅类,继承Bird的方法和属性
class Swan(Bird):
    how_to_move = "swim"
    edible = False
    def chirp(self):
        print("make sound")


help(square_sum)
help(Bird)


summer = Chicken("jiji")
print(summer.feather)#调用父类Bird的属性feather
summer.previous_chirp("ji")#调用父类Bird的属性previous_chirp
summer.chirp()
print(summer.reproduction)#输出为stock
print("以上是鸡类")

summer = Bird("ji")#调用构造函数init,将ji赋值给summer对象的sound属性
summer.chirp_repeat("ji", 10)#功能:输出10次ji
print(summer.reproduction)
summer.set_color("yellow")
print(summer.color)

结果为:

Help on function square_sum in module test:

square_sum(a, b)
你好,我是square_sum函数

Help on class Bird in module main:

class Bird(builtins.object)
| 你好我是鸟类,我是比较抽象的类
|
| Methods defined here:
|
| init(self, sound)
| Initialize self. See help(type(self)) for accurate signature.
|
| chirp(self, sound)
|
| chirp_repeat(self, sound, n)
|
| previous_chirp(self, sound)
|
| set_color(self, color)
|
|
| Data descriptors defined here:
|
| dict
| dictionary for instance variables (if defined)
|
| weakref
| list of weak references to the object (if defined)
|
|
| Data and other attributes defined here:
|
| feather = True
|
| reproduction = ‘egg’

my sound is: jiji
True
ji
dd 你好
jiddd egg
stock
以上是鸡类
my sound is: ji
ji
ji
ji
ji
ji
ji
ji
ji
ji
ji
egg
yellow

猜你喜欢

转载自blog.csdn.net/u012211422/article/details/78826524