携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第30天
答案是输出[] , 这是因为切片不受内建类型的限制; 索引访问,会导致IndexError
使用@property将方法转为属性,该属性为只读属性,只可访问但是不可以修改,
使用对象.方法名来访问该属性,但是方法不能再加小括号,故AB选项说法均错误; 变量__count是类的私有变量,由于每次创建对象时,其值自增1,所以可以用来统计创建对象的个数,C正确;
虽然__height和__width为私有变量,不能在类外直接使用对象名.属性名来访问,但是,仍可以使用rectangle._Rectangle__width和rectangle._Rectangle__height来强制访问,故D错误。
@property表示我们可以使用@property装饰器来创建只读属性,@property装饰器会将方法转换为相同名称的只读属性,可以与所定义的属性配合使用,这样可以防止属性被修改。
- A 我们在使用属性的时候 只需要 rectangle.area即可 后面不需要加括号
- B 只读不可修改了
- C __init__每次实例化对象的时候自动调用,所以C正确
- D python里面没有严格的私有属性,还是可以访问的,rectangle._Rectangle__width访问width属性
rectangle._Rectangle__height访问height属性[即对象名._类名__私有属性名]
参考解析
title() :单词首字母大写
capitalize(): 字符串首字母大写
find:找到返回第一个位置索引,找不到返回-1
index:找到返回第一个位置索引,找不到报ValueError
random.random():这是生成0和1之间的随机浮点数float
参考其他牛油答案:
dict.get(key, default=None)——————————————————————
key -- 字典中要查找的键。 default -- 如果指定键的值不存在时,返回该默认值None值。 Python标准的内置数据类型有:Number(整数型 int , 浮点数型 float, 布尔型 bool , 复数 complex)
String List Tuple Set Dictionary
Python可变数据类型:可改变变量的值,且不会新建对象
List Dictionary Set
Python不可变数据类型:不允许变量的值发生改变,发生改变时会新建对象
Tuple string Number
闭包就是:
1.一个函数(外函数)内部定义了一个函数(内函数)
2.内函数调用了外函数的变量
3.并且外函数的返回值是内函数的引用
第一个adder5=adder(5)结束后,x=5,adder返回值为wrapper
adder5(6),此时wrapper(6),所以值为11,x为5
adder5(adder5(6)),同理,11+5=16