四时宝库

程序员的知识宝库

网络工程师的Python之路 -- 类(Class)

类(Class)作为Python的进阶内容在我的书和专栏文章里是没有讲到的,因为从实用性的角度来看,它对刚入门学习Python,只需要写10几行代码就能SSH登陆网络设备,并完成输入各种配置命令和show/display命令的的网工来说,除了加重网工学习Python的负担外,实际的作用和帮助其实并不大。有鉴于这两年来读过我专栏文章和书的网工读者越来越多,很多读者已经彻底掌握了Python的基础知识,在此基础上,我认为还是有必要把书上以前没讲到的Python进阶知识做个补充,今天就来聊聊类(Class),还是老规矩,所有教学内容和举的例子都将从网工的角度出发。

python 基础之类class(class类python程序)

一、定义 class

class Person:
    代码块

//实例化             
person_class = Person()       

Python中Class的基础用法及讲解(class()python)

Python关于class(类)的知识(python中class类的用法)

目录:

面向对象编程,类的定义,类的属性,类方法,__init__ 初始化魔法方法

python class 基础知识(python class详解)

类的概述

  1. 类是对数据和函数的封装。
  2. 创建一个类就是创建了一个新的数据类型。
  3. 类的实例通过属性来显示它的状态。

测开不得不会的python之类(class)的定义和使用

学习目录

1 什么是类

2 类的定义

2.1 类属性

2.2类方法

对python 中class与变量的使用方法详解

python中的变量定义是很灵活的,很容易搞混淆,特别是对于class的变量的定义,如何定义使用类里的变量是我们维护代码和保证代码稳定性的关键。

 global_variable_1 = 'global_variable'
 
class MyClass():
  class_var_1 = 'class_val_1' # define class variable here
  def __init__(self, param):
    self.object_var_1 = param # define object variable here
    self.object_var_2 = 'object_val_2' # define object variable here
    self.object_func3()
 
  def object_func1(self, param):
    local_var_1 = param # define lcoal variable here
    local_var_2 = 'local_val_2' # define local variable here
    self.internal_var_1 = 'internal_val_1' # define internal variable here
    print(local_var_1) # we can use local variable of current here
    print(local_var_2) # we can use local variable of current here
    print(MyClass.class_var_1) # we can use class variable here, but you have using class name ass prefix
    print(self.class_var_1) # we can use class variable as object variable here
    print(self.object_var_1) # we can use object variable here
    print(self.object_var_2) # we can use object variable here
    print(self.internal_var_1) # we can use internal variable here
    #print(local_var_3) # we can't use local variable in another function
    print(global_variable_1) # we can use global variable here
 
  def object_func2(self, param='func_val_1'):
    local_var_3 = param # define local variable here
    print(local_var_3) # we can use lcoal variable here
    print(self.internal_var_1) # we can use internal variable defined in class_func1, but you have to call class_func1 first
    print(MyClass.class_var_1) # we can use class variable here, but you have using class name ass prefix
    print(self.class_var_1) # we can class variable here
    print(self.object_var_1) # we can use object variable here
    print(self.object_var_2) # we can use object variable here
    print(global_variable_1) # we can use global variable here
 
 
  def object_func3(self, param='func_val_1'):
    self.object_var_3 = param # because this function called in construction function, so this is defined as object variable, not internal variable
    self.object_var_4 = 'object_val_4' # because this function called in construction function, so this is defined as object variable, not internal variable
    print(global_variable_1) # we can use global variable here
  
  # define class function
  def class_func4():
    print(MyClass.class_var_1)
    print(global_variable_1) # we can use global variable here
 
if __name__ == '__main__':
  myObject = MyClass('object_val_1')
  print(MyClass.class_var_1) # we can use class variable directly here
  #print(MyClass.object_var_1) # we can't use object variable here
  print(myObject.object_var_1) # we can use object variable here
  print(myObject.object_var_2) # we can use object variable here
  print(myObject.object_var_3) # we can use object variable here
  print(myObject.object_var_4) # we can use object variable here
  #print(myObject.internal_var_1) # we can't use internal variable as object variable here
  MyClass.class_func4() # we can use class function here
  #MyClass.object_func2(myObject, 'local_var_3') # internal variable can't be used in this function
  myObject.object_func1('local_var_1') # call first function
  myObject.object_func2('local_var_3') # call second function
  print(global_variable_1) # we can use global variable here

Python3.7新特性:Data Class(python data class)

介绍

Python 3.7 中有一个新特性, 你可以使用一个装饰器 @dataclass来简化创建数据类的过程,新创建的数据类将自带有__init____repr__

数据类是一种用来存储数据的类,这种类往往不需要自定义的方法。通常,我们也管它叫数据结构。例如,一个存储点的三维坐标值的类,往往就只需要三个字段 (x, y, z)。

Python中如何深入理解class(python@classmethod)

类也是对象

在理解元类之前,你需要先掌握Python中的类。Python中类的概念借鉴于Smalltalk,这显得有些奇特。在大多数编程语言中,类就是一组用来描述如何生成一个对象的代码段。

对这方面感兴趣,想要学习python或者想要了解python可以加群:623715703

防患于未“燃”,让用电更智慧更安全

应急管理部消防救援局发布2020火灾情况:初步统计,全国共接报火灾25.2万起,死亡1183人,受伤775人,直接财产损失40.09亿元。其中,因短路、过载、接触不良等线路问题引发火灾占总数68.9%。

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接