博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python学习day6 小知识点、编码
阅读量:5249 次
发布时间:2019-06-14

本文共 2047 字,大约阅读时间需要 6 分钟。

python2 python3的一些区别

#python2print 'abc'   #print不需要加括号range()   xrange() 生成器raw_input()  #输入#python3print('abc')range()   #只有这一个rangeinput()
== 比较值是否相等   is 比较,比较的是内存地址  id(内容)
li1 = [1,2,3]li2 = li1li3 = li2print(id(li1),id(li2))  #地址相同

为了节省内存,以下情况下会共用一个内存:

1.小数据池 -5--256

2.字符串,但是中间不能含有特殊字符,s*20之前是同一个地址 s*21以后都是两个地址

i1 = 6i2 = 6print(id(i1),id(i2))  #地址相同i1 = 300i2 = 300print(id(i1),id(i2))  #地址不同

list dict tuple set 相同内容的内存都不一样

编码

ascii 

A :  00000010 8位 一个字节

unicode 

 A :  00000000 00000001 00000010 00000100 32位 四个字节

中:00000000 00000001 00000010 00000110 32位 四个字节

utf-8 

 A :   00100000                                      8位 一个字节

中 :   00000001 00000010 00000110  24位 三个字节

gbk

 A :  00000110                     8位 一个字节

中 :  00000010 00000110  16位 两个字节

1,各个编码之间的二进制,是不能互相识别的,会产生乱码。 2,文件的储存,传输,不能是unicode(太大了),只能是utf-8 utf-16 gbk,gb2312,asciid等

 

py3:     str 在内存中是用unicode编码。         转换成bytes类型可以和文件交流操作         对于英文:              str  :表现形式:s = 'alex'                     编码方式: 010101010  unicode             bytes :表现形式:s = b'alex'                     编码方式: 000101010  utf-8 gbk。。。。         对于中文:              str  :表现形式:s = '中国'                     编码方式: 010101010  unicode             bytes :表现形式:s = b'x\e91\e91\e01\e21\e31\e32'                     编码方式: 000101010  utf-8 gbk。。。。

 bytes类型

s = 'alex's1 = b'alex'print(s,type(s))          #strprint(s1,type(s1))      #bytess = '中国'print(s,type(s))s1 = b'中国'print(s1,type(s1))   #会报错
如何将str --> bytes
## encode 编码s1 = 'alex's11 = s1.encode('utf-8')s11 = 'alex'.encode('gbk')print(s11)s2 = '中国's22 = s2.encode('utf-8')s22 = s2.encode('gbk')print(s22)

 转换

(1) Int与str之间如何转化,转换的结果是什么?有没有条件?

int ---->> str 数字类型变为字符串类型,没有条件,直接用str() str ----->> int 字符串类型变为数字类型,必须得为纯数字,int()

(2) Int与bool之间如何转化,转换的结果是什么?有没有条件?

int ---->> bool 0为false 其余为True bool----->> int false 对应0,True 对应1

(3) str与bool之间如何转化,转换的结果是什么?有没有条件?

str ----->> bool ""时为false,其余都为True bool ----->> str True 为字符串True False 为字符串False

(4) str与list能否转化?如何转化?

str ------>> list list(str类型)为迭代的字符串列表 list ------>> str str(list类型)内容不变,类型变为str,可以用strip删除中括号

转载于:https://www.cnblogs.com/happyfan/p/9756118.html

你可能感兴趣的文章
openLDAP环境搭建
查看>>
Spring和Mybatis的集成
查看>>
玩转UICollectionViewLayout
查看>>
如何在.xml文件中配置Servlet信息
查看>>
使用AVCaptureSession捕捉静态图片
查看>>
redis enable TLS
查看>>
bugku web 头等舱
查看>>
java学习之多态(转型、特点)
查看>>
十五 枚举
查看>>
列表list
查看>>
实习生的工作周报大纲
查看>>
深度剖析Reges.Match
查看>>
做一个懒COCOS2D-X程序猿(一)停止手打所有cpp文件到android.mk
查看>>
浅谈 easyui tabs 的href和content属性
查看>>
【STL】Message Flood(set)
查看>>
关于技术趋势,写给奋斗中的程序员们
查看>>
批处理警惕等号前面的空格
查看>>
计算思维
查看>>
用 NodeJS 实现 BigPipe
查看>>
Orange's笔记(1)
查看>>