小知识点总结

一、Python2与Python3 的区别
1、Python2中可以加括号输出,也可不加输出
    Python3中必须加
2、python2 中有xrange(生成器)也有range
    python3中只有range
3、python2中的input为raw_input
     python3 中为input
二、‘=’与is的区别
1、'='为赋值
      '=='比较值是否相等
      'is'比较的是内存地址
       'id(内容)'--->内存地址,对于赋值运算来说 指向同一个地址

li1 = [1,2,3]
li2 = li1
print(li1 is li2)---->True
print(id(li1),id(li2))
2、数字,字符串 小数据池
int的小数据池:数字的范围-5---256数字在这个范围之内,会共用一个内存地址
字符串的小数据池:不能含有特殊字符。有特殊字符不能共用一个内存地址。s*2o还是同一个地址,s*21以后都是两个地址。只能是一个字符
4,剩下的 list dict tuple set没有小数据池的概念
5,python3中的编码
ascii一个字符用一个字节,8位表示
unicode A:用32位来表示。4个字节。中:4个字节
 uft-8:英文是8位1个字节,中文用24位3个字节来表示
gbk :  英文用1个字节8位来表示,中文用16位,2个字节来表示。
(1)各个编码之间的二进制是不能互相识别的,会产生乱码
(2)文件的储存,传输,不能是Unicode(只能是utf-8,utf-16,gbk,gb2312,ascii等)
py3: 
    str 在内存中使用Unicode编码。
        bytes类型一种特殊的数据类型,和str很像,但不是以unicode编码。
         对于英文:
                    str的表现形式---》s = 'alex'
                            编码方式:0101010010  Unicode
                     bytes: 表现形式: s =b'alex'
                            编码方式:utf-8

对于中文:
                    str的表现形式---》s = '中国'
                            编码方式:0101010010  Unicode
                     bytes: 表现形式: s =b'x\e91\e91\e01\e21\e31\e32'(16进制)

怎么转换
#encode如何将str--》bytes类型
s1 ='alex'
s11 = s1.encode('utf-8')'
print(s11)------>b'alex'
                 #utf-8
s2 ='中国'
s2 = s2.encode('utf-8')
print(s22)
                # 编码方式:utf-8   
 

Python学习日记:day6----小知识点总结的更多相关文章

  1. Python 学习日记(第三周)

    知识回顾 在上一周的学习里,我学习了一些学习Python的基础知识下面先简短的回顾一些: 1Python的版本和和安装 Python的版本主要有2.x和3.x两个版本这两个版本在语法等方面有一定的区别 ...

  2. Python学习记录day6

    title: Python学习记录day6 tags: python author: Chinge Yang date: 2016-12-03 --- Python学习记录day6 @(学习)[pyt ...

  3. Python学习日记 --day2

    Python学习日记 --day2 1.格式化输出:% s d  (%为占位符 s为字符串类型 d为数字类型) name = input('请输入姓名') age = int(input('请输入年龄 ...

  4. python学习日记(基础数据类型及其方法01)

    数字 int 主要是用于计算的,常用的方法有一种 #既十进制数值用二进制表示时,最少使用的位数i = 3#3的ASCII为:0000 0011,即两位 s = i.bit_length() print ...

  5. Python之路番外:PYTHON基本数据类型和小知识点

    Python之路番外:PYTHON基本数据类型和小知识点 一.基础小知识点 1.如果一行代码过长,可以用续行符 \换行书写 例子 if (signal == "red") and ...

  6. Python学习日记(一):拜见小主——Python

    近日学习Python,特将学习过程及一点心得记录于此. 由于之前做过一个Java爬虫的项目,虽然很长时间没有碰过爬虫,但是小郭同学有一颗不死的爬虫心,哈哈.最近在互联网上找一些电影的时候,有很多电影只 ...

  7. Python之路番外(第二篇):PYTHON基本数据类型和小知识点

    一.基础小知识点 1.如果一行代码过长,可以用续行符 \换行书写 例子 if (signal == "red") and \ (car == "moving") ...

  8. Python之——遇到的小知识点总结

    学习过程中,难免会遇到一些冷门的小知识点,熟悉这些小知识可以在工作中达到事半功倍的效果,尽力消除自己的知识盲区.总之当时的自己花了不少功夫去解决这些问题,因此觉得有必要单独记录下来,以后也许会再遇到, ...

  9. Python学习路程day6

    shelve 模块 shelve模块是一个简单的k,v将内存数据通过文件持久化的模块,可以持久化任何pickle可支持的python数据格式 import shelve d = shelve.open ...

随机推荐

  1. cmd+任务管理器解决端口被占用的问题

    1.打开cmd命令行 2.输入命令netstat –ano,会显示所有被占用的端口号以及占用该端口的程序所对应的进程号. (local address下面是端口号,PID是占用端口的某程序的进程号) ...

  2. python从2.7升级到3.5 需要主要的问题

    今天鼓足勇气把我们python从2.7升级到3.5.我用的是pycharm开发工具.升级过程遇到一些问题小结下: 1.右击项目: 找到左侧 project interpreter选项,配置项目开发环境 ...

  3. laravel 嵌套的渴求式加载

    今天在通过需求表A查询场地类型表B,然后通过表B的场地类型id去查询表C场地类型名的时候遇到了一个小的问题. 需求表A的字段:id.user_id .name等等: 中间表B的字段:id.appeal ...

  4. JAVA基础3——常见关键字解读(2)

    synchronized Java语言的关键字,当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码. 用法说明 synchronized 关键字,它包括两种用法: ...

  5. 解决WebSocket兼容ie浏览器版本问题

    转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/7942323.html 在使用Netty进行WebSocket开发时,测试发现:ie 11系列个别低版本连接W ...

  6. iphone6 plus导入联系人或者通讯录

    iphone6 plus快速导入联系人或者通讯录(使用QQ同步助手,真的很简单) 最近换了部手机,由于之前的手机保存联系人都是保存在手机,没有备份在sim卡,由于sim卡被我剪小了,不能插回原来的手机 ...

  7. 关于java' web杂谈(其实是课后作业1)1 网站系统开发需要掌握的技术

    1 网站系统开发需要掌握的技术:(借鉴度娘)https://zhidao.baidu.com/question/1701850648247880220.html 需要掌握的有:Java(JavaEE) ...

  8. 如何在仅主机模式下ping通网路上网

    1 主机的控制面板,找到电脑的实际网卡,勾选,并选择VMware Network Adapter VMnet1 找到虚拟网卡VMware Virtual Ethernet Adapter for VM ...

  9. zzuli 1816: 矩形 排序思维

    1816: 矩形 Time Limit: 1 Sec  Memory Limit: 128 MB Submit: 179  Solved: 54 SubmitStatusWeb Board Descr ...

  10. linux上kafka模拟客户端发送、接受消息

    producer   消息的生成者,即发布消息 consumer   消息的消费者,即订阅消息 broker     Kafka以集群的方式运行,可以由一个或多个服务组成,服务即broker zook ...