python - 内置对象 之 变量

一、变量命名规划

1.命名规则

(1)命名内容只能是字母、下划线、数字

(2)名字第1字符只能是字母或下划线

(3)区分大小写

 

2.私有变量

(1)_xxx

  • "单下划线" 开始的成员变量相当于私有变量,也叫做保护变量,意思是只有类实例和子类实例能访问到这些变量,需通过类提供的接口进行访问;不能用'from module import *'导入

(2)__xxx

  • 双下划线:类中的私有变量/方法名。" 双下划线 " 开始的是私有成员,无法在实例外部直接访问,只有类对象自己能访问。

(3)__xx __

  • 双前后下划线,系统定义名字,为特殊属性或方法,特殊方法的存在是给Python解释器调用的,你自己并不需要调用他们,例如:__init __ , 不要自己发明这样的名字。

(4)xx_

  • # 单后置下划线,用于避免与Python关键词的冲突。

 

3.python常用命名规范

(1)模块名:

小写字母,单词之间用_分割

ad_stats.py

 

(2)包名:

和模块名一样

 

(3)类名:

单词首字母大写

AdStats

ConfigUtil

 

(4)全局变量名(类变量,在java中相当于static变量):

大写字母,单词之间用_分割

NUMBER

COLOR_WRITE

 

(5)普通变量:

小写字母,单词之间用_分割

this_is_a_var

 

(6)实例变量:

以_开头,其他和普通变量一样

_price

_instance_var

 

(7)私有实例变量(外部访问会报错):

以__开头(2个下划线),其他和普通变量一样

__private_var

 

(8)专有变量:

__开头,__结尾,一般为python的自有变量,不要以这种方式命名

__doc__

__class__

 

(9)普通函数:和普通变量一样

get_name()

count_number()

ad_stat()

 

(10)私有函数(外部访问会报错):

以__开头(2个下划线),其他和普通函数一样

__get_name()

 

二、变量赋值规则

Python使用变量之前不需声明,变量赋值既是声明也是定义变量的过程。变量在使用之前都必须赋值。

 

1.赋空值方法

各类型对象赋空值方法

digital_value=0 #数字

str_value=""或str_value='' #字符串

list_value=[] #列表

ditc_value={} #字典

tuple_value=() #元组

 

2.增强赋值语句

 

 

 

3.变量赋值比较式

value = 2 < 5;

print(value;)   #结果返回true

 

4.用input()对变量赋值

value=input();  #手工输入23

print(value);

 

5.删除已声明的变量

del var1

当我们删除var1对象后,再执行打印var1时,会报Not Defined的错误。

 

 

三、python变量引用顺序

  • 从当前作用域开始寻找变量,没有则就往上一层作用域寻找,还没则继续往上一层找...... ,寻找顺序:
  • 当前作用域局部变量->外层作用域变量->再外层作用域变量->......->当前模块全局变量->pyhton内置变量
  • 观察下面3个例子,观察a的输出
    #例1:
     
    a = 10
     
    def outer():
     
    a = 9
     
    def inner():
     
    a = 8
     
    print(a)
     
    inner()
     
    print(a)
     
    outer()
     
    print(a)
     
    结果:
     
    8
     
    9
     
    10
     
     
     
    例2:
     
    a = 10
     
    def outer():
     
    a = 9
     
    def inner():
     
    print(a)
     
    inner()
     
    print(a)
     
    outer()
     
    print(a)
     
    结果:
     
    9
     
    9
     
    10
     
     
     
    例3:
     
    a = 10
     
    def outer():
     
    def inner():
     
    print(a)
     
    inner()
     
    print(a)
     
    outer()
     
    print(a)
     
    结果:
     
    10
     
    10
     
    10
    

      

    四、global定义全局变量

     

    • global定义全局变量作用:声明自定义函数内的变量为全局变量
    全局变量例子
    x = 50
    def func():
        global x
        print('x的值是', x)
        x = 2
        print('全局变量x改为', x)
         
    func()
    print('x值是', x)
    x的值是 50
    全局变量x改为 2
    x值是 2
    

      

posted @ 2021-05-02 00:56  沐雪架构师  阅读(75)  评论(0编辑  收藏  举报