阿里云大学人工智能学前小测验-Python测试

10.Python权限修饰正确的是

A. 标识符开头无下划线,该变量或方法为公有权限

B. 标识符开头双下划线,该变量或方法为私有权限

C. 标识符开头单下划线,该变量或方法为保护权限

D. 以上都正确

参考博文:https://www.cnblogs.com/yanyichao/p/4319348.html,感谢博主

关于python中访问权限建议看一下这篇博文http://www.liujiangblog.com/course/python/45,毕竟以双下划线开头的数据成员是不是一定就无法从外部访问呢?其实也不是!本质上,从内部机制原理讲,外部不能直接访问__age是因为Python解释器对外把__age变量改成了_People__age,也就是_类名__age(类名前是一个下划线)。因此,投机取巧的话,你可以通过_ People__age在类的外部访问__age变量。即Python的私有成员和访问限制机制是“假”的,没有从语法层面彻底限制对私有成员的访问。

1 访问权限

Python中变量(函数)的访问权限与变量(函数)的名字有关

public    object

protected  _object   import * 不会导入

private    __object  

system_use __object__

其中,单下划线开头,则不能通过import * 导入;双下划线开头(且少于两个下划线结尾),则无法直接访问,但是可以通过_classname__object访问。

class A:

__age = 18

print(dir(A()))

print(A()._A__age)

2 名字修饰

名字修饰是现代计算机程序设计语言的编译器用于解决由于程序实体的名字必须唯一而导致的问题的一种技术。

Python语言的名字修饰用于类的“私有”(private)成员。这种类成员的名字由前导双下划线开头,并且后缀下划线不能多于一个。例如__thing将被名字修饰,___thing和__thing_同样也会被名字修饰,但是__thing__和__thing___就不会被名字修饰。Python运行时库不限制访问这些成员,名字修饰只是用来避免拥有同名成员的派生类发生名字冲突。

python 权限修饰符相关推荐

  1. python属性访问权限_python 面向对象-访问权限修饰符

    1.访问权限修饰符可以用来修饰变量和方法 2.内部调用和外部调用: 比如在类的内部调用实例方法,叫内部调用:在类的外部调用实例化方法,叫外部调用 当然,类变量以及实例变脸也是有内部调用和外部调用 #c ...

  2. java内部类的权限符,static介绍、内部类、final、权限修饰符的作用范围,

    static介绍.内部类.final.权限修饰符的作用范围,static 关键字:(可用于修饰方法.变量) static 特点: static是静态修饰符,一般修饰成员变量.被static修饰的属于全 ...

  3. 包package,权限修饰符

    定义包的格式   package 包名; 多级包用.分开即可 注意事项:   package语句必须是程序的第一条可执行的代码   package语句在一个java文件中只能有一个 如果没有packa ...

  4. java 权限修饰符大小_Java中访问权限修饰符public protected private, 缺省默认权限的用法总结...

    1.访问权限符: (1)public: 对于成员来说:任何其他类都可以访问它们,不管在同一个包中还是在另外的包中. 对于类来说: 也是一样. (2)friendly: 对于成员老说:如果一个类的成员没 ...

  5. Java类中的权限修饰符

    为什么80%的码农都做不了架构师?>>>    public:允许所有外部类访问使用public protected:允许子类和同包类访问使用protected private:只能 ...

  6. java 内部类 返回值_Java基础第10天+形式参数和返回值的问题、包、导包、权限修饰符、常见的修饰符、内部类(局部内部类,成员内部类,匿名内部类)...

    1:形式参数和返回值的问题(理解) (1)形式参数: 类名:需要该类的对象 抽象类名:需要该类的子类对象 接口名:需要该接口的实现类对象 (2)返回值类型: 类名:返回的是该类的对象 抽象类名:返回的 ...

  7. Java基础课程---权限修饰符

    1 java  权限修饰符 从小到大 private 只有类中能用 缺省,类,同一个包中能用 protected,类,同一个包中能用,以及不同包中的子类可以使用 public:公共的,都可以使用,同一 ...

  8. Java10-day01【继承(变量-构造方法访问-成员方法 访问)、super内存图、方法重写、继承、包、import、权限修饰符、final、static】

    视频+资料(工程源码.笔记)[链接:https://pan.baidu.com/s/1MdFNUADVSFf-lVw3SJRvtg   提取码:zjxs] Java基础--学习笔记(零起点打开java ...

  9. python函数修饰符@的使用

    python函数修饰符@的作用是为现有函数增加额外的功能,常用于插入日志.性能测试.事务处理等等. 创建函数修饰符的规则: (1)修饰符是一个函数 (2)修饰符取被修饰函数为参数 (3)修饰符返回一个 ...

最新文章

  1. 【划分树】 POJ 2104 HDU 2665 K-th Number 裸题
  2. strust2控制标签(二) merge标签,generator标签,subset标签,sort标签
  3. eltree ref什么时候有_成功el-tree从接口取数据
  4. 4.有关日期格式属性修改常识,v$nls_parameters,between and,查询指定部门的员工信息,in和null,like模糊查询,order by后面可以跟:列名、表达式、别名、序号
  5. 湖北高校实用的大数据平台,专业的高校大数据实训平台解决方案,波若高校实训平台...
  6. 一文看懂 | 内存交换机制
  7. html木桶布局,CSS3如何实现图片木桶布局?(附代码)
  8. java 解压到内存,Java GZip 基于内存实现压缩和解压的方法
  9. 每日学习小记 11/02
  10. java getstring_Java String 类 | 菜鸟教程
  11. Linux下使用服务器24小时不间断直播电影电视剧
  12. 用BoundsChecker检测内存泄漏
  13. 如何使用视频剪辑软件将qsv格式视频转换为MP4格式
  14. js科学计算机,js网页在线科学计算器代码
  15. 中科大自主招生计算机,中科大自主招生(中科大自主招生试题)
  16. 2021WSB-day2-4: Raffaele教授演示利用OpenCV和Python实现一个指纹识别系统 (含代码) part6
  17. Qt解决连接https报错
  18. Linux下的打包和解压缩命令
  19. Linux日常软件安装(FC6)
  20. java服务器访问白名单

热门文章

  1. 台湾国立大学郭彦甫Matlab教程笔记(12) advanced 2D plot 下
  2. idea 升级到2020后 无法启动_【维修案例】2020年一汽奥迪Q5L发动机无法启动
  3. 当前元素_90行代码,15个元素实现无限滚动
  4. 下次激活策略10_巅峰武侠卡牌巨制手游乱世江湖1元商城特权bt版今日10:00上线_乱世江湖...
  5. multiple root tags怎么解决_手机ROOT后交管12123打不开怎么解决;EdXposed使用QX模块微X教程...
  6. jpa mysql乐观锁_JPA @Lock(value = LockModeType.PESSIMISTIC_WRITE) 悲观锁防坑
  7. oracle里的ols机制,Oracle ASM的AU(Allocation units)分配
  8. Oracle序列的建立以及使用
  9. mac php安装mysql扩展_(MAC) PHP扩展安装
  10. python enumerate