首页 > 编程语言 >在Python中,下划线代表着什么?

在Python中,下划线代表着什么?

时间:2023-02-03 23:33:48浏览次数:34  
标签:__ 代表 下划线 Python value print Cls name

前缀单下划线,如:_name

某个方法或变量如果使用了此格式命名只是提醒开发者这并不是要组成公共接口的,对于普通的单文件内的变量或方法来说,并没有实际限制作用。但是用此格式命名的变量或方法无法被from import显式导入所导入,除非被__all__列表限制。


如下所示:

# a.py

_name = 'value'
# b.py

import a
print(a._name) # 正常打印:'value'
# c.py

from a import *

print(_name) # NameError: name '_name' is not defined
# d.py

_name = 'value'

__all__ = ['_name']
# e.py

from d import *

print(_name) # 正常打印:'value'


后缀单下划线,如:name_

如果一个方法名或变量名和原定关键词或方法名冲突,则使用此格式命名。如,原先想定义一个名称叫print的方法,可是print已经成为一个既定的方法名,于是可以定义一个名称叫print_的方法名防止冲突。



前缀双下划线,如:__name

class Cls:
    __name = 'value'

    def getName(self):
        return self.__name

print(Cls().__name) # AttributeError: 'Cls' object has no attribute '__name'
print(Cls()._Cls__name) # 正常打印:'value'
print(Cls().getName()) # 正常打印:'value'


前后各双下划线,如:__name__

此情况和上述前缀双下划线不同,用此格式命名并不会触发名称更改。但用此格式命名的变量或方法一般是Python保留而用于特殊目的的,如__init__、__name__等。应当尽量避免自己的变量名或方法名为此格式。



仅单下划线,如:_

一般用“_”命名那些并不重要的、用不到的变量名。

如下所示:

# 如果我们想要打印十次value...
for _ in range(10):
    print('value')

标签:__,代表,下划线,Python,value,print,Cls,name
From: https://www.cnblogs.com/XuShuo-Self/p/17090710.html

相关文章

  • python字符编码问题处理
    编码编码目的是让机器读懂语言在python中,Python接受的是str即使输入的数据是其它格式,在Python内部都会自动转为str编码集因为电脑是根据二进制工作的,所以将二进制......
  • Python基本数据类型
    一、Number(数字)整型(int):通常被称为是整型或整数,是正或负整数,不带小数点。Python3整型是没有限制大小的,可以当作Long类型使用,所以Python3没有Python2的Long类型。......
  • Python中的关键字的用法
    Python有哪些关键字Python常用的关键字and,del,from,not,while,as,elif,global,or,with,assert,else,if,pass,yield,break,except,import,print,clas......
  • python django项目创建
    目标本文为创建django项目的第一步操作、实现项目创建、模块创建、虚拟环境指定、并实现健康检查接口一、环境准备安装python参考官方文档:https://www.python.org/down......
  • Python__23--对象
    1什么是对象?对象(Object)是一个应用系统中的用来描述客观事物的实体,是有特定属性和行为(方法)的基本运行单位。是类的一个特殊状态下的实例。对象可以是一个实体、一个名词、一......
  • Python__24--对象的特殊属性与特殊方法
    1特殊属性1.1dictclassA:passclassB:passclassC(A,B):def__init__(self,name,age):self.name=nameself.age=agex=C('Jack',20)print(x._......
  • how download file by url in python
    https://www.codingem.com/python-download-file-from-url/https://www.codingem.com/read-textfile-into-python-program/......
  • 【力扣算法题-Python】1、两数的和
    (【力扣-Python】1、两数的和)题目题目:两数之和。难度:简单。给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值target的那两个整数,并返......
  • python 深拷贝和浅拷贝
    python深拷贝和浅拷贝变量:存储对象的引用对象:会分配一块内存空间,存储实际数据引用:变量指向对象,理解为指针变量存储在栈内存,对象存储在堆内存。Python数据类型分为......
  • 软件测试|Python基础之面向对象(二)
    面向对象的编程思想面向对象是一种编程思想,用这种思想为指导设计的程序,把数据和对数据的操作封装在一起组成类,通过类来创建对象,通过对象之间的交互来实现程序的功能。面向对......