进入不同语言版本的Python交互环境

py -2

py -3

pip 命令的执行 :

py -2 -m pip install xxxx

py -3 -m pip install nose

执行python文件

py -2 a.py

py -3 a.py

py2:

print "hello"

py3:

print("hello")

如果不想py -2这样进入python2,可以

进入到python27的安装目录

把python.exe 修改为python2.exe

在环境变量里面加入这个Python27的路径

python3 a.py

pip3 install

python3:str类型---》相当于py2的unicode类型

str类型encode之后变为了bytes类型---》相当于python2的str类型

print(s.encode("gbk"))

b'\xce\xd2\xc3\xc7'

print(s.encode("gbk").decode("gbk"))

我们

文件操作

在python3中,默认编码环境为utf8,故不需要像py2那样在文件头指定编码,但是在open()函数多一个encoding参数,在python2是没有的

with open('d:\\gloryroad\\1.txt','r',encoding='utf8') as fp:

... print(fp.read())

...

abbcddeeegiiiilmnnooooorrrstuvyz

中文

在python3中,write函数里面必须是str类型的

with open('d:\\gloryroad\\1.txt','w',encoding='utf8') as fp:

... fp.write("我们\n你们\n".encode('utf8'))

...

Traceback (most recent call last):

File "", line 2, in

TypeError: write() argument must be str, not bytes

在python3中连接数据库的包是PyMySQL,python2是MySQLdb,连接方法都一样。

序列化

python3没有cpickle,只有pickle

多线程

thread 模块已被废弃。用户可以使用 threading 模块代替。所以,在 Python3 中不能再使用"thread" 模块。为了兼容性,Python3 将 thread 重命名为 "_thread"。

队列

python3的queue模块是小写,py2是Queue,因此

import queue

q=queue.Queue(5)

q.put(2)

q.get()

2

q

使用中文格式化时间

from datetime import datetime

nt=datetime.now()

print(nt.strftime('%Y年%m月%d日 %H时%M分%S秒')) --->报错

法1:

import locale

locale.setlocale(locale.LC_CTYPE, 'chinese')

print(nt.strftime('%Y年%m月%d日'))

2015年08月10日

原理是:“在Windows里,time.strftime使用C运行时的多字节字符串函数strftime,这个函数必须先根据当前locale配置来编码格式化字符串(使用PyUnicode_EncodeLocale)。”如果不设置好locale的话,根据默认的"C" locale,底层的wcstombs函数会使用latin-1编码(单字节编码)来编码格式化字符串,然后导致题主提供的多字节编码的字符串在编码时出错。

法2:

print(nt.strftime('%Y{y}%m{m}%d{d}').format(y='年', m='月', d='日'))

原理是:既然直接丢中文字符进去会出错,那么就绕过这个问题,丢(可能)永远不会出错的ascii字符进去充当占位符,格式化完毕后再将占位符换回中文字符。

法3:

print(time.strftime('%Y年%m月%d日'))

2019年05月23日

写文件时不一样:

with("filename.txt","w",encoding="utf-8") as fp:

fp.write("我们\n很好\n")

python3和python2的导入有点不一样,import xxx不适用,后续需要详读核心编程的模块导入

python2的python27/Lib下 的是ConfigParser

python3的python27/Lib下是configparser

所以引入的时候是不同的,需要注意

py2.7.11:

import ConfigParser

py3.7.3:

import configparser

python2.7.11

try:

pass

except Exception, e:

raise e

python3.7.3:

try:

pass

except Exception as e:

raise e

python2.7.11

d={'a':123}

if d.haskey(a):

pass

python3.7.3:

if 'a' in d.keys():

pass

python3的样子_python3与python2不一样的地方相关推荐

  1. map python2 python3 兼容_windows下 兼容Python2和Python3的解决方法

    windows下同时安装了python2和python3时,都可以配置环境变量,如果在命令行里输入python命令,windows会去环境变量里寻找Python的安装位置,如果先找到pytoon2的, ...

  2. python2好还是python3好-新手入门选择Python2还是Python3

    1. 前言 Python的发展很快,几乎每年都在版本迭代.目前Python有两个主要版本,一个是python2.x,另一个是python3.x. 兔子先生最早接触Python的时候,使用的是pytho ...

  3. python3性能还低吗_Python3 vs. Python2 大作战,谁将是性能之王?

    渲染 HTML 模板 django_html 测试将使用 Django 模板渲染引擎来构建一个 150x150 的 HTML 表格. 它利用了 Django 引擎的 Content 和 Templat ...

  4. python3.5.3安装完后什么样子_python3.5安装python3-tk详解

    在python3.5下安装好matplotlib后,准备显示一张图片测试一下,但是控制台报错说需要安装python3-tk,我天真的以为直接: sudo apt-get install python3 ...

  5. python3和python2 优势_python3和python2的区别

    1.性能 Py3.0运行 pystone benchmark的速度比Py2.5慢30%.Guido认为Py3.0有极大的优化空间,在字符串和整形操作上可 以取得很好的优化结果. Py3.1性能比Py2 ...

  6. python3项目-把项目从Python2.x移植到Python3.x的经验总结

    经历移植jinja2到python3的痛苦之后,我把项目暂时放一放,因为我怕打破python3的兼容.我的做法是只用一个python2的代码库,然后在安装的时候用2to3工具翻译成python3.不幸 ...

  7. 苹果笔记本macbook pro如何安装python_在Mac上兼容安装Python3并保留原先的Python2.7

    前言 博主的电脑为2017款macbook pro ,电脑自带python2.7版本,在网上查资料得知由于很多系统服务依赖于自带的2.7py,所以不敢卸载,因此只能安装双兼容python,这里以Pyt ...

  8. python3默认编码格式_python3 中文乱码与默认编码格式设定方法

    python默认编码格式是utf-8.在python2.7中,可以通过sys.setdefaultencoding('gbk')设定默认编码格式,而在python3.3中sys.setdefaulte ...

  9. python3 字符串 hex 相互转换 代替python2 decode(‘hex’)

    1.python2.7.x hex字符串和bytes之间的转换是这样的: >>> a = 'aabbccddeeff' >>> a_bytes = a.decode ...

最新文章

  1. How to use nheqminer in RedHat based systems (CentOS/Fedora)
  2. scp 将数据从一台linux服务器复制到另一台linux服务器
  3. 一道关于笔试的多线程题目
  4. java技术详解_Java反射技术详解及实例解析
  5. 学习笔记(47):Python实战编程-pack布局
  6. 外卖匹配系统_困扰外卖骑手的“系统” ,无人能置身事外
  7. Linux查看网口带宽状态(ifconfig,netstat,ethtool)
  8. python开始_python开始的一天
  9. updateStateByKey算子入门案例
  10. 三省2:hadoop是什么鬼1
  11. 2022最新Nodejs下载安装配置步骤(保姆级教程)
  12. html背景透明图片不透明,html - css实现背景透明内容不透明。
  13. echarts树形图样式_echarts的树形结构图及参数
  14. Linux小项目-广告机项目设计
  15. 字体设计符号组合多功能微信小程序源码
  16. 纯css写滚动的弹幕特效
  17. 简述计算机基本工作原理以及指令执行步骤,计算机的指令执行过程分为四步请简述它们简述...
  18. Windows 解决端口占用
  19. 微信设置字体变大后导致页面样式布局全乱
  20. WIN10下调用waveInOpen方法失败返回错误1的解决方法

热门文章

  1. [再寄小读者之数学篇](2014-06-22 求导数 [中国科学技术大学2014年高等数学B考研试题])...
  2. 一次性删除数据库中某库的所有存储过程的方法
  3. Linux下进程的建立
  4. 为什么产品经理面试都喜欢问注册问题?
  5. 征集活动 | PMCAFF八周年,十万产品经理送祝福
  6. 【软件工程】技术规格说明书
  7. 【POJ 2485】 Highways
  8. [Spring]IoC容器之进击的注解
  9. hash+set Codeforces Round #291 (Div. 2) C. Watto and Mechanism
  10. 以色列全国路网遭到了网络攻击 造成交通拥堵