博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python学习笔记之五:类定义
阅读量:6838 次
发布时间:2019-06-26

本文共 2136 字,大约阅读时间需要 7 分钟。

这里,我定义了一个类,初始化函数,Show函数,并且定义了文档字符串,使用了help函数和__doc__来调用文档字符串

>>> class FooClass(object):    "This is my first class !"    def __init__(self, name="NoName"):        "This is a kinda construct funtion."        self.name = name    def show(self):        "This is a print function."        print 'My name is', self.name        >>> fc = FooClass('Tiejiaxiaobao')>>> fc.show()My name is Tiejiaxiaobao>>> help(FooClass)Help on class FooClass in module __main__:class FooClass(__builtin__.object) |  This is my first class ! |   |  Methods defined here: |   |  __init__(self, name='NoName') |      This is a kinda construct funtion. |   |  show(self) |      This is a print function. |   |  ---------------------------------------------------------------------- |  Data descriptors defined here: |   |  __dict__ |      dictionary for instance variables (if defined) |   |  __weakref__ |      list of weak references to the object (if defined)>>> help(FooClass.show)Help on method show in module __main__:show(self) unbound __main__.FooClass method    This is a print function.>>> FooClass.__doc__
'This is my first class !'>>> FooClass.show.__doc__'This is a print function.'>>>

 这里,我分别测试了几种类成员变量的声明方式,试图发现关于变量定义的规律

>>> class FooClass(object):    #members list    name = 'NoName'    name1 = 'NoName1'    name2 = 'NoName2'    def __init__(self, name):        self.name = name    def func1(self):        self.name1 = self.name        print self.name1    def func2(self):        self.name2 = self.name1        print self.name2        >>> obj = FooClass('Tie Jia Xiao Bao')>>> obj.name2'NoName2'>>> obj.func2()NoName1>>> obj.func1()Tie Jia Xiao Bao>>> obj.func2()Tie Jia Xiao Bao>>> obj.__dict__{
'name2': 'Tie Jia Xiao Bao', 'name': 'Tie Jia Xiao Bao', 'name1': 'Tie Jia Xiao Bao'}>>> obj = FooClass('Tie')>>> obj.__dict__{
'name': 'Tie'}>>> obj.func2()NoName1>>> obj.__dict__{
'name2': 'NoName1', 'name': 'Tie'}>>> obj.name1'NoName1'>>> obj.__dict__{
'name2': 'NoName1', 'name': 'Tie'}>>> obj.func1()Tie>>> obj.__dict__{
'name2': 'NoName1', 'name': 'Tie', 'name1': 'Tie'}>>>

 

转载于:https://www.cnblogs.com/zanzan101/p/3647331.html

你可能感兴趣的文章
Java-GC-标记清除算法
查看>>
(转载)Java多线程入门(一)
查看>>
[C#]中获取当前程序运行路径的方法
查看>>
我的第一天
查看>>
SGU 164.Airline(结论题)
查看>>
findlibrary returned null
查看>>
scala学习手记28 - Execute Around模式
查看>>
Filebeat的工作原理
查看>>
Elasticsearch配置文件详解
查看>>
Java虚拟机学习 - 查看JVM参数及值的命令行工具
查看>>
Ubiquitous Religions(friends变形)
查看>>
机器学习——聚类分析和主成分分析
查看>>
Win10上 visual studio设置为本地IIS运行网站时 必须以管理员身份加载项目的解决方法...
查看>>
记录常见的HTTP请求错误
查看>>
Java字符串替换函数replace、replaceFirst、replaceAll
查看>>
Ubuntu下搭建Android开发环境
查看>>
汇编指令
查看>>
yum安装mysql后root用户的临时密码
查看>>
mysql 原理~ 乐观锁和悲观锁
查看>>
策略模式
查看>>