• Python3基础 getattr 获取对象的指定属性值


    •        Python : 3.7.0
    •          OS : Ubuntu 18.04.1 LTS
    •         IDE : PyCharm 2018.2.4
    •       Conda : 4.5.11
    •    typesetting : Markdown

    code

    coder@Ubuntu:~$ source activate py37
    (py37) coder@Ubuntu:~$ ipython
    Python 3.7.0 (default, Jun 28 2018, 13:15:42) 
    Type 'copyright', 'credits' or 'license' for more information
    IPython 6.5.0 -- An enhanced Interactive Python. Type '?' for help.
    
    In [1]: class MyClass:
       ...:     # 类属性
       ...:     num = 0
       ...: 
       ...: 
    
    In [2]: getattr(MyClass,'num')  # 属性的名字是字符串
    Out[2]: 0
    
    In [3]: # 还可以进行加说明,防止抛异常
    
    In [4]: introduction = '你所访问的属性不存在'
    
    In [5]: print(getattr(MyClass, 'name', introduction))
    你所访问的属性不存在
    
    In [6]: # 如果你访问的属性不存在,会抛异常
    
    In [7]: getattr(MyClass, 'name')
    ---------------------------------------------------------------------------
    AttributeError                            Traceback (most recent call last)
    <ipython-input-7-4454b72514b0> in <module>()
    ----> 1 getattr(MyClass, 'name')
    
    AttributeError: type object 'MyClass' has no attribute 'name'
    
    In [8]: exit
    (py37) coder@Ubuntu:~$ source deactivate
    coder@Ubuntu:~$ 
    
    

    resource

    • [文档] docs.python.org/3
    • [规范] www.python.org/dev/peps/pep-0008
    • [规范] zh-google-styleguide.readthedocs.io/en/latest/google-python-styleguide/python_language_rules
    • [源码] www.python.org/downloads/source
    • [ PEP ] www.python.org/dev/peps
    • [平台] www.cnblogs.com
    • [平台] gitee.com


    Python具有开源、跨平台、解释型、交互式等特性,值得学习。
    Python的设计哲学:优雅,明确,简单。提倡用一种方法,最好是只有一种方法来做一件事。
    代码的书写要遵守规范,这样有助于沟通和理解。
    每种语言都有独特的思想,初学者需要转变思维、踏实践行、坚持积累。

  • 相关阅读:
    安装spark-1.5遇到的一些问题
    spark遇到的一些问题及其解决办法
    spark-client 一直 accepted,无法提交任务,报错Failed to connect to driver at
    spark-sql用hive表格,在spark-submit运行jar包时遇到的问题
    hive streaming 使用的时候的一些心得
    [BZOJ]1063 道路设计(Noi2008)
    PKUWC2018划水记
    [BZOJ]3527 力(ZJOI2014)
    [Codeforces]906D Power Tower
    [BZOJ]1071 组队(SCOI2007)
  • 原文地址:https://www.cnblogs.com/xingchuxin/p/10425703.html
Copyright © 2020-2023  润新知