Python笔记 | Python中各种下划线的作用;单引号、双引号、三引号的区别。

一、下划线

单下划线和双下划线在python变量和方法名称中都各有其含义。有一些含义仅仅是依照约定,被视作是对程序员的提示,而有一些含义是python解释器严格执行的。

单前导下划线_var:
  1. 表示非公有,也叫做保护变量,表示类对象和子类对象自己才能访问这些变量。
  2. 采用from somemodulename import*的方法,导入模块时,被保护的变量不会被导入。
  3. 即单个下划线是一个python命名约定,表示这个名称是仅供内部使用的。它通常不由python解释器强制执行,仅仅作为一种对程序员的提示
单后缀下划线var_:

为了避免与python关键字产生命名冲突而采用的一种命名方法。

双前导下划线__var:
  1. 私有属性,当命名一个类属性可能引起名称冲突时使用,避免与子类中的属性命名冲突。
  2. 无法在外部直接访问(名字已经被重整所以访问不到)。
  3. 类对象和子类可以访问(公有方法可以间接访问,使用重整后的名称访问)。
双前导和后缀下划线__var__:
  1. 内置的的魔法对象或者属性,用于有特殊用途,例如__init__ 对象构造函数或者__file__
  2. 我们不要自己创造类似的名称,只需要使用他们即可。
补充:
  • 私有属性和私有方法使用双前置下划线,私有属性和方法类内部,类的对象和子类可以访问
  • 私有属性和私有方法外部不能直接访问
  • 单前置下划线是普通方法
  • 父类的私有属性和私有方法
    1. 子类对象不能在自己的方法内部,直接访问父类的私有属性或私有方法
    2. 子类对象可以通过父类的公有方法间接访问到私有属性或私有方法
私有属性本质:
  • 类创建的时候,在__init__ 方法中,采用双前置下划线创建的属性,该属性创建后,类内部实际上对该属性进行了名字重整(改名了,私有方法和属性在外部不可以直接用属性或方法名调用,内部将私有方法和属性在前面增加了 “_类名”)。
  • 因此,实例化对象后,外界访问不到,但是使用重整后的名字可以访问。

二、单引号、双引号、三引号有什么区别?

  • 单引号和双引号:单独使用单引号和双引号没什么区别,但是如果引号里面还需要使用引号的时候,就需要这两个配合使用了。一般建议外部使用单引号,内部使用双引号。
  • 三引号:三引号也分为三单引号和三双引号,一般用于函数功能描述。两个都可以声名长的字符串时候使用,如果使用 docstring 就需要使用三双引号。
  • 推荐:
    1. 三个单引号或者双引号常用于文档注释,推荐使用三个单引号。
    2. 双引号,纯粹的字符串,用于打印显示,字符串的拼接,使用双引号
    3. 单引号,除了纯粹的字符串,其它的字符串、参数等都用单引号,比如字典的键值、类传入的参数等等。

参考Felix的GitChat

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值