Python __init__() method & __init__.py file All In One
Python init() method & init.py file All In One
__init__()
method
class
objects
Class objects support two kinds of operations: attribute references
and instantiation
.
类对象
支持两种操作:属性引用
和实例化
。
- Attribute references use the
standard syntax
used forall attribute references
in Python
class Human:
"""Human class"""
name = "xgqfrms"
age = 18
list = [1, 2 , 3]
def getName(self):
return self.name
def getAge(self):
return self.age
def getList(self):
return self.list
# 实例化 class
person = Human()
print("name =", person.getName())
print("age =", person.getAge())
print("list =", person.getList())
"""
name = xgqfrms
age = 18
list = [1, 2, 3]
"""
# python3 ./classes/class-attributes.py
- Class instantiation uses
function notation
.
类实例化使用函数注解
。函数表示法
returns a new instance
of the class.
When a class defines an __init__()
method, class instantiation automatically invokes __init__()
for the newly created class instance.
#!/usr/bin/env python3
# coding: utf8
__author__ = 'xgqfrms'
__editor__ = 'vscode'
__version__ = '1.0.1'
__copyright__ = """
Copyright (c) 2012-2050, xgqfrms;
mailto:xgqfrms@xgqfrms.xyz
"""
class Human:
# 类似 ES6 class 的 constructor 构造函数
def __init__(self, name, age):
self.name = name
self.age = age
self.list = [1, 2 , 3]
# 实例化 class
person = Human("xgqfrms", 18)
print("name =", person.name)
print("age =", person.age)
print("list =", person.list)
"""
name = xgqfrms
age = 18
list = [1, 2, 3]
"""
# python3 ./classes/class-init.py
https://docs.python.org/3/tutorial/classes.html#class-objects
https://docs.python.org/zh-cn/3/tutorial/classes.html#class-objects
__init__.py
file
docs
https://docs.python.org/3/tutorial/
https://docs.python.org/3/contents.html
https://wiki.python.org/moin/IntroductoryBooks
https://wiki.python.org/moin/BeginnersGuide/Examples
https://docs.python.org/3/search.html?q=init
https://docs.python.org/3/reference/datamodel.html#object.init
https://docs.python.org/3/library/dataclasses.html?highlight=init#re-ordering-of-keyword-only-parameters-in-init
demos
python functions
sum()
&zip()
#!/usr/bin/env python3
# coding: utf8
__author__ = 'xgqfrms'
__editor__ = 'vscode'
__version__ = '1.0.1'
__copyright__ = """
Copyright (c) 2012-2050, xgqfrms; mailto:xgqfrms@xgqfrms.xyz
"""
list1 = [1, 3, 5]
list2 = [2, 4, 6]
# zip() & sum()
total = sum(x * y for x, y in zip(list1, list2))
# 2 + 12 + 30 => 44 ✅
print("total =", total)
print("\n")
for x, y in zip(list1, list2):
print("x,y =", x, y)
"""
total = 44
x,y = 1 2
x,y = 3 4
x,y = 5 6
"""
"""
# $ python3 ./classes/zip.py
$ py3 ./classes/zip.py
"""
https://docs.python.org/3/tutorial/classes.html#private-variables
https://docs.python.org/3/tutorial/classes.html#generator-expressions
zip()
函数用于将可迭代
的对象作为参数,将对象中对应的元素
打包成一个个元组
,然后返回由这些元组组成的对象;
这样做的好处是节约
了不少的内存
;
我们可以使用list()
转换来输出列表;
如果各个迭代器的元素个数不一致
,则返回列表长度与最短
的对象相同,利用 *
号操作符,可以将元组
解压为列表
;
https://www.runoob.com/python/python-func-zip.html
https://www.runoob.com/python3/python3-func-zip.html
https://www.freecodecamp.org/chinese/news/python-zip-zip-function-in-python/
(🐞 反爬虫测试!打击盗版⚠️)如果你看到这个信息, 说明这是一篇剽窃的文章,请访问 https://www.cnblogs.com/xgqfrms/ 查看原创文章!
exit & main
exit()
#!/usr/bin/env python3
# coding: utf8
from time import sleep
def init():
print("exit python repl ✅")
init()
sleep(3)
exit()
# py3 ./exit.py
__main__
#!/usr/bin/env python3
# coding: utf8
from time import sleep
# main
if __name__ == '__main__':
print("exit python repl ✅")
sleep(3)
exit()
# py3 ./main.py
https://www.cnblogs.com/xgqfrms/p/17452392.html
python tutorial
https://docs.python.org/3/tutorial/
https://docs.python.org/zh-cn/3/tutorial/
https://www.python.org/about/gettingstarted/
https://docs.python.org/3/faq/
https://wiki.python.org/moin/BeginnersGuide/NonProgrammers
https://wiki.python.org/moin/PythonEditors
Visual Studio Code
https://code.visualstudio.com/docs/languages/python
https://marketplace.visualstudio.com/items?itemName=ms-python.python
https://code.visualstudio.com/docs/python/python-tutorial
Django
https://code.visualstudio.com/docs/python/tutorial-django
https://github.com/microsoft/python-sample-vscode-django-tutorial
Flask
https://code.visualstudio.com/docs/python/tutorial-flask
https://github.com/microsoft/python-sample-vscode-flask-tutorial
refs
https://www.runoob.com/note/42127
https://www.zhihu.com/question/46973549
https://www.madlabai.com/zh/self-init-python-class/
https://www.udacity.com/blog/2021/11/init-in-python-an-overview.html
https://www.geeksforgeeks.org/init-in-python/
https://www.w3schools.com/python/gloss_python_class_init.asp
©xgqfrms 2012-2021
www.cnblogs.com/xgqfrms 发布文章使用:只允许注册用户才可以访问!
原创文章,版权所有©️xgqfrms, 禁止转载 🈲️,侵权必究⚠️!
本文首发于博客园,作者:xgqfrms,原文链接:https://www.cnblogs.com/xgqfrms/p/17360720.html
未经授权禁止转载,违者必究!