欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python如何使用vars返回對象的屬性列表

 更新時間:2020年10月17日 14:49:35   作者:lincappu  
這篇文章主要介紹了Python如何使用vars返回對象的屬性列表,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

英文文檔:

vars([object])

Return the __dict__ attribute for a module, class, instance, or any other object with a __dict__ attribute.
Objects such as modules and instances have an updateable __dict__ attribute; however, other objects may have write restrictions on their __dict__ attributes (for example, classes use a dictproxy to prevent direct dictionary updates).
Without an argument, vars() acts like locals(). Note, the locals dictionary is only useful for reads since updates to the locals dictionary are ignored.

  返回當(dāng)前作用域內(nèi)的局部變量和其值組成的字典,或者返回對象的屬性列表

說明

  1. 當(dāng)函數(shù)不接收參數(shù)時,其功能和locals函數(shù)一樣,返回當(dāng)前作用域內(nèi)的局部變量。

#不帶參數(shù)功能和locals函數(shù)一樣
>>> v1 = vars()
>>> l1 = locals()
>>> v1
{'__name__': '__main__', '__builtins__': <module 'builtins' (built-in)>, 'v1': {...}, 'l1': {...}, '__spec__': None, '__doc__': None, '__package__': None, '__loader__': <class '_frozen_importlib.BuiltinImporter'>}
>>> l1
{'__name__': '__main__', '__builtins__': <module 'builtins' (built-in)>, 'v1': {...}, 'l1': {...}, '__spec__': None, '__doc__': None, '__package__': None, '__loader__': <class '_frozen_importlib.BuiltinImporter'>}

  2. 當(dāng)函數(shù)接收一個參數(shù)時,參數(shù)可以是模塊、類、類實例,或者定義了__dict__屬性的對象。

#作用于模塊
>>> import time
>>> vars(time)
{'gmtime': <built-in function gmtime>, 'tzname': ('Öйú±ê׼ʱ¼ä', 'ÖйúÏÄÁîʱ'), 'timezone': -28800, 'struct_time': <class 'time.struct_time'>, 'ctime': <built-in function ctime>, 'perf_counter': <built-in function perf_counter>, 'mktime': <built-in function mktime>, 'localtime': <built-in function localtime>, 'time': <built-in function time>, '__package__': '', 'altzone': -32400, 'clock': <built-in function clock>, 'strptime': <built-in function strptime>, 'monotonic': <built-in function monotonic>, '__loader__': <class '_frozen_importlib.BuiltinImporter'>, 'get_clock_info': <built-in function get_clock_info>, 'sleep': <built-in function sleep>, 'process_time': <built-in function process_time>, '__name__': 'time', '_STRUCT_TM_ITEMS': 9, '__spec__': ModuleSpec(name='time', loader=<class '_frozen_importlib.BuiltinImporter'>, origin='built-in'), '__doc__': 'This module provides various functions to manipulate time values.\n\nThere are two standard representations of time. One is the number\nof seconds since the Epoch, in UTC (a.k.a. GMT). It may be an integer\nor a floating point number (to represent fractions of seconds).\nThe Epoch is system-defined; on Unix, it is generally January 1st, 1970.\nThe actual value can be retrieved by calling gmtime(0).\n\nThe other representation is a tuple of 9 integers giving local time.\nThe tuple items are:\n year (including century, e.g. 1998)\n month (1-12)\n day (1-31)\n hours (0-23)\n minutes (0-59)\n seconds (0-59)\n weekday (0-6, Monday is 0)\n Julian day (day in the year, 1-366)\n DST (Daylight Savings Time) flag (-1, 0 or 1)\nIf the DST flag is 0, the time is given in the regular time zone;\nif it is 1, the time is given in the DST time zone;\nif it is -1, mktime() should guess based on the date and time.\n\nVariables:\n\ntimezone -- difference in seconds between UTC and local standard time\naltzone -- difference in seconds between UTC and local DST time\ndaylight -- whether local time should reflect DST\ntzname -- tuple of (standard time zone name, DST time zone name)\n\nFunctions:\n\ntime() -- return current time in seconds since the Epoch as a float\nclock() -- return CPU time since process start as a float\nsleep() -- delay for a number of seconds given as a float\ngmtime() -- convert seconds since Epoch to UTC tuple\nlocaltime() -- convert seconds since Epoch to local time tuple\nasctime() -- convert time tuple to string\nctime() -- convert time in seconds to string\nmktime() -- convert local time tuple to seconds since Epoch\nstrftime() -- convert time tuple to string according to format specification\nstrptime() -- parse string to time tuple according to format specification\ntzset() -- change the local timezone', 'strftime': <built-in function strftime>, 'asctime': <built-in function asctime>, 'daylight': 0}

#作用于類
>>> vars(slice)
mappingproxy({'__ne__': <slot wrapper '__ne__' of 'slice' objects>, '__getattribute__': <slot wrapper '__getattribute__' of 'slice' objects>, '__reduce__': <method '__reduce__' of 'slice' objects>, 'start': <member 'start' of 'slice' objects>, 'indices': <method 'indices' of 'slice' objects>, '__ge__': <slot wrapper '__ge__' of 'slice' objects>, 'stop': <member 'stop' of 'slice' objects>, '__eq__': <slot wrapper '__eq__' of 'slice' objects>, 'step': <member 'step' of 'slice' objects>, '__hash__': None, '__doc__': 'slice(stop)\nslice(start, stop[, step])\n\nCreate a slice object. This is used for extended slicing (e.g. a[0:10:2]).', '__repr__': <slot wrapper '__repr__' of 'slice' objects>, '__le__': <slot wrapper '__le__' of 'slice' objects>, '__gt__': <slot wrapper '__gt__' of 'slice' objects>, '__new__': <built-in method __new__ of type object at 0x6A91B420>, '__lt__': <slot wrapper '__lt__' of 'slice' objects>})

#作用于類實例
>>> class A(object):
  pass

>>> a.__dict__
{}
>>> vars(a)
{}
>>> a.name = 'Kim'
>>> a.__dict__
{'name': 'Kim'}
>>> vars(a)
{'name': 'Kim'}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python設(shè)計模式之中介模式簡單示例

    Python設(shè)計模式之中介模式簡單示例

    這篇文章主要介紹了Python設(shè)計模式之中介模式,簡單介紹了中介模式的概念、功能,并結(jié)合實例形式給出了Python定義與使用中介模式的相關(guān)操作技巧,需要的朋友可以參考下
    2018-01-01
  • Python中常見的KeyError報錯分析

    Python中常見的KeyError報錯分析

    在Python編程中,KeyError是一種非常常見的異常,它通常發(fā)生在嘗試訪問字典中不存在的鍵時,本文將深入探討KeyError的報錯原因、解決辦法,并通過代碼示例來演示如何避免這一錯誤,需要的朋友可以參考下
    2024-07-07
  • python3使用PyMysql連接mysql數(shù)據(jù)庫實例

    python3使用PyMysql連接mysql數(shù)據(jù)庫實例

    本篇文章主要介紹了python3使用PyMysql連接mysql數(shù)據(jù)庫實例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-02-02
  • python中的正斜杠與反斜杠實例驗證

    python中的正斜杠與反斜杠實例驗證

    這篇文章主要介紹了python中的正斜杠與反斜杠實例驗證,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-03-03
  • Python3利用Dlib實現(xiàn)攝像頭實時人臉檢測和平鋪顯示示例

    Python3利用Dlib實現(xiàn)攝像頭實時人臉檢測和平鋪顯示示例

    這篇文章主要介紹了Python3利用Dlib實現(xiàn)攝像頭實時人臉檢測和平鋪顯示示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-02-02
  • 使用pandas read_table讀取csv文件的方法

    使用pandas read_table讀取csv文件的方法

    今天小編就為大家分享一篇使用pandas read_table讀取csv文件的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • pandas中DataFrame數(shù)據(jù)合并連接(merge、join、concat)

    pandas中DataFrame數(shù)據(jù)合并連接(merge、join、concat)

    這篇文章主要給大家介紹了關(guān)于pandas中DataFrame 數(shù)據(jù)合并連接(merge、join、concat)的相關(guān)資料,文中介紹的非常詳細(xì),需要的朋友可以參考下
    2021-05-05
  • python基礎(chǔ)之匿名函數(shù)詳解

    python基礎(chǔ)之匿名函數(shù)詳解

    這篇文章主要介紹了python基礎(chǔ)之匿名函數(shù)詳解,文中有非常詳細(xì)的代碼示例,對正在學(xué)習(xí)python基礎(chǔ)的小伙伴們有很好的幫助,需要的朋友可以參考下
    2021-04-04
  • 詳解python腳本自動生成需要文件實例代碼

    詳解python腳本自動生成需要文件實例代碼

    這篇文章主要介紹了詳解python腳本自動生成需要文件實例代碼的相關(guān)資料,需要的朋友可以參考下
    2017-02-02
  • Python 實現(xiàn)Windows開機(jī)運行某軟件的方法

    Python 實現(xiàn)Windows開機(jī)運行某軟件的方法

    今天小編就為大家分享一篇Python 實現(xiàn)Windows開機(jī)運行某軟件的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10

最新評論