python3.x 可以用中文作为变量名
random.pow()不能用来求x的y次方。random里面没有pow这个方法
print里面用字符串乘以整数,可以输出整数多个字符串,而且相隔没有空格或者换行
对一个变量进行重新赋值,不管他先前是什么值,赋值之后都是后面的这个。
math库里面默认log底数为e
一个需求给出来之后要注意对其进行拆分变幻,找到其中隐藏的要求。比如
这里就需要考虑123,1123这种情况。
除法,地板除,取余:
>>> 10 / 3
3.3333333333333335
>>> 10 // 3
3
整数的地板除//永远是整数,即使除不尽。要做精确的除法,使用/就可以。
因为//除法只取结果的整数部分,所以Python还提供一个余数运算,可以得到两个整数相除的余数:
>>> 10 % 3
1
python故障判定:
语法是:
try:
(待判定代码)
except 故障名称
(想要运行的代码)
except (name)
(balabal)
else:
(代码正常的时候想要运行的代码)
split的括号里面是啥就以啥为间隔进行分隔创建列表
小整数用4或8个字节表示,32位Python用4个字节,64位Python用8个字节表示。
大整数每个数字用15bit或30bit表示,即2字节或4字节表示。大整数没有4或8个字节的总长度限制,理论上可以无限大。
浮点数运算的结果不可以直接比较大小
因为浮点数在内存中不能精确的存储,比如说3.14或许就会存成3.139999
已知x为非空列表,那么x.sort(reverse=True)和x.reverse()的作用是等价的(X)
后面一个是暂时的
集合里面不能有列表: unhashable type: ‘list’
Python字典和集合属于无序序列。(X)
Python 3.6 改写了 dict 的内部算法,因此 3.6及之后的 的 dict 是有序的,在此版本之前皆是无序
已知x为非空列表,那么执行语句x[0] = 3之后,列表对象x的内存地址不变。
x = [1,2,3]
print(id(x))
x[0] = 3
print(id(x))
63793112
63793112
列表里面可以放集合
已知x是个列表对象,那么执行语句y = x之后,对y所做的任何操作都会同样作用到x上。(X)
这里只是引用了值
python中变量名和对象是分离的
a = 3
b = 3
通过函数查看 变量a 和 变量b的引用情况:
>>> a = 3
>>> b = 3
>>> id(a)
10289448
>>> id(b)
10289448
在这里可以看到 这俩个引用 指向了同一个 对象,这是为什么呢? 这个跟python的内存机制有关系,因为对于语言来说,频繁的进行对象的销毁和建立,特别浪费性能。所以在Python中,整数和短小的字符,Python都会缓存这些对象,以便重复使用。
列表可以作为字典的键(X)
列表不能作为字典的键。他是unhashable的
list 不使用 hash 值进行索引,故其对所存储元素没有可哈希的要求;
set / dict 使用 hash 值进行索引,也即其要求欲存储的元素有可哈希的要求。
Python不支持dict的key为list或dict类型,因为list和dict类型是unhashable(不可哈希)的。
904



被折叠的 条评论
为什么被折叠?



