一. 补充了python2和python3的区别,具体补充的内容写到前面。
二. 赋值运算指向的是同一个内存空间,
is函数是比较两个数的内存地址
id (内容)是测出内容的内存地址
三、小数据池(只有数字类型和字符类型有)
数字类型:值在-5到256之内都会被放到一个地址里供大家使用,这个供大家使用的地方叫做小数据池。
字符串型的小数据池有以下规则:
- 字符串里不能含有特殊字符
- 字符串的字母个数在20以下。
四、各种编码方式的位数
注: 1.各种编码方式之间的二进制是不能互相识别的,会产生乱码
六、python3大环境下的文件存储过程
bytes类型的中文不易认出,所以尽管它占用内存空间少,但是我们不直接用它
两种数据类型之间的转换用函数 encode 例如: s.encode('utf-8')
七. .isspace函数的使用方法
.issapce()是一个判断字符串是否含有空格的函数,其返回值是bool型,有则是ture ,没有则是false
八. 使用for循环删除列表内容时容易犯的错误的产生原因及解决方法
产生原因:在使用for循环中,不可以凭借索引直接删掉列表或者字典里面的内容,这样的话程序会直接报错,因为使用for循环时,列表的索引数量会直接先计算出来,然后按照索引来删除列表内容,但是每删除一个列表内容,列表的索引数量会自动更新,与原来for计算的索引数量是不同的,具体例子如下
lo=['小白','小黄','小黑','小蓝','小绿'] for i in range(len(lo)): print(i) print(lo) del lo[i]
解决办法:一,建立一个新表项,将要删除的数据填入新表项,再由新表项的索引删除老表项的内容(此方法只适用于字典,因为字典的改可以直接改键值对而不要索引)
二,将不用删除的数据填入新表项,再将新表项赋值给老表项(都适用) 举例为第二种
lo=['小白','小黄','小黑','二哥','小绿'] lo1=[] for i in lo: if '小' not in i: lo1.append(i) lo=lo1 print(lo)
九.元祖里面如果元素只有一个且不加逗号,那么该元素该是什么类型就是什么类型,比如下面这个例子
a1=([1]) a2=([1],) print(a1,type(a1)) print(a2,type(a2)) 结果为 [1] <class 'list'> ([1],) <class 'tuple'>
十.集合
集合的表示方法与字典一样,不同的是,只有键值而没有对应值,在集合里面,元素会自动查重,即集合不允许两个相同的元素出现,并且集合里面的元素值的类型必须是不可改变的。