Python2与3的一些注意要点(后期持续更新)

上一篇:Python处于的位置 点击跳转
目录篇:python相关目录篇 点击跳转
下一篇:Python文件操作 点击跳转

目录

  • 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’)解码就可以了

 

上一篇:Python处于的位置 点击跳转
目录篇:python相关目录篇 点击跳转
下一篇:Python文件操作 点击跳转

你可能感兴趣的:(Python篇)