Python——2与3的一些注意要点

目录

1.Linux脚本的申明

2.字符串和2进制

3.请求输入(标准输入)的区别

4.字符集的区别

5.提示输入

5.类的区别查找方式

6.socket区别


1.Linux脚本的申明

如果使用该申明:#!/usr/bin/ python 代表是系统自带的python.2.7来解释你的脚本。如果你安装一个高版本 是在usr/local/python3.5目录下,由于一般情况下不可以替换系统自带的Python怕发生其他问题。

所以我们写脚本的时候用该申明:#!/usr/bin/env python这样解析该脚本的就是高版本(加上解析申明就代表文件本身只要具备执行权限也可以直接执行)

2.字符串和2进制

Python2的字符串和二进制是自动互相转换,

Python3需要进行encode才可以把字符串转换成二进制类型(bytes),二进制需要进行decode才可以转成字符串类型(str)

 

3.请求输入(标准输入)的区别

print('Hi, %s!' %input('Please enter your name: ')) python3.*版本用input

print('Hi, %s!' %raw_input('Please enter your name: ')) #python2.*版本用raw_input

4.字符集的区别

python3:python 3统程序默认和文件编码是unicode字符集不管是GBK 还是utf-8最终要显示中文就必须要解码unicode字符集才可以显示 (一个文本内容统一显示某一字符集显示,如果存在其他字符集需转换否则以bytes类型显示)

python2:python2:统程序默认和文件编码是ascii字符集脚本需要声明字符集如:-*- coding:utf-8 -*- or -*- coding:gbk -*-.一个文件包含gbk utf-8的字符集,只需要切换会话窗口对应的字符集就可以显示 如:会话窗口是GBK ,那么utf-8的字符集就会出现乱码,如会话串口是utf-8,那么其他字符集就会出现乱码或者空

5.提示输入

Python2:raw_input

Python3:input

5.类的区别查找方式

  py2经典类是按深度优先来继承的,新式类是按广度优先继承的

  py3全是按广度优先继承

6.socket区别

python 2

     1.增加脚本申明:-*-coding:utf-8-*-

     2.server.listen()#监听端口  ==== server.listen(5): 监听一定要写数量否则出错

     发送数据无需转换数据类型

Python3

     所有数据必须要.encode(‘utf-8’) 编码成bytes类型才可进行发送数据和接收数据

     然后在本地如果要查看恢复就.decode(‘utf-8’)解码就可以了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值