python2.x与3.x的主要区别笔记
#coding:utf-8
'''
python3.x新的东西
目录
- 使用__future__模块
- print函数
- 整数除法
- Unicode
- xrange
- 触发异常
- 处理异常
- next()函数和.next()方法
- For循环变量与全局命名空间泄漏
- 比较无序类型
- 使用input()解析输入内容
1,__future__ 模块
2,print函数
python2.x:
print "Hello World" #is acceptable in Python 2
print x,
python3.x
print ("Hello World") # in Python 3, print must be followed by ()
print(x,end="")
3,从键盘读取输入
Python2 中有输入函数两个版本。 input() 和 raw_input()。如果它被包含在引号 '' 或 "",input() 对待接收到的数据作为字符串,否则数据将被视为数字类型。
Python3 中 raw_input()函数已被弃用。此外,接收到的输入数据总是作为字符串处理
4,整数除法
在Python2,两个整数的除法的结果会四舍五入到最接近的整数。如:3/2 其结果将显示 1。 为了获得一个浮点除法,分子或分母必须明确为浮点数。因此无论是 3.0/2 或 3/2.0 或 3.0/2.0 将产生1.5 。
Python3 计算 3/2 默认结果值为 1.5,这对新手程序员更加直观。
5,Unicode表示
Python2 里如果你想将它保存为 Unicode,需要标记为 U 的字符串。
Python3 中的字符串默认存储为 Unicode。在Python3,我们有个Unicode(UTF-8)字符串和 2 字节类:字节和字节数组。
6,xrange()函数已被删除
7,异常
在 Python3,异常参数应以 'as' 关键字来声明。
except Myerror, err: # In Python2
except Myerror as err: #In Python 3
8,next() 函数和.next()方法
在Python 2,next() 作为生成器对象的一个方法是允许的。在 Python2,next()函数过度产生器对象遍历也是可以接受的。在Python3,但是,next()函数作为生成器方法来中止并引发AttributeError。
gen = (letter for letter in 'Hello World') # creates generator object
next(my_generator) #allowed in Python 2 and Python 3
my_generator.next() #allowed in Python 2. raises AttributeError in Python 3
9,2to3实用工具
'''
print("%d,%s,%.2f"%(10,"asd",2.3456))
print(10,end="")
input("\nPress the enter key to exit.")
abs(-10)
min()
max()
import math
math.ceil(0)ceil()方法函数返回x的值上限 - 小于x的最小整数
math.exp(10)exp()方法返回x的指数幂:e的x次幂
math.fabs()方法/函数返回x的绝对值。虽然类似于abs()函数,但是两个函数之间有些差异
abs()是一个内置的函数。 fabs() 在math模块中定义。
fabs() 函数只适用于浮点和整数。abs() 复数也适用。
math.floor() 方法返回x的地板 - 最大但不能大于x的整数。
math.log()方法返回x的自然对数(x>0)。math.log(math.exp(1))==1
math.log10() 方法返回基数为10的x对数(x>0)。int(math.log10(123456))+1
math.pow()
math.sqrt()
import random
random.random()
def cmp(x,y):
return (x>y)-(x<y)
>>> math.pi
3.141592653589793
>>> math.e
2.718281828459045
>>>
str.capitalize()
>>> "asdasd".capitalize()
'Asdasd'
>>>
str.decode(encoding='UTF-8',errors='strict')
str.encode(encoding='UTF-8',errors='strict')
str.find(str, beg=0 end=len(string))
>>> a="abcdefghijklmn"
>>> a.find(a)
0
>>> a.find("jk",len("jk"))
9
islower()方法检查字符串中所有可大小写的字符(字母)是否都为小写字母。
python2.x与3.x的主要区别笔记的更多相关文章
- Python2.x与Python3.x的主要区别(转)
python2.x和python3.x版本有很大的差异,除了依赖包的名称变化很大外,其主要差异总结如下: 1)print函数 Python3中,print函数的括号是必须的,Python2是可选的. ...
- python中urllib, urllib2,urllib3, httplib,httplib2, request的区别
permike原文python中urllib, urllib2,urllib3, httplib,httplib2, request的区别 若只使用python3.X, 下面可以不看了, 记住有个ur ...
- 大数据时代的Python金融应用-Day1-Python与金融应用概述
一.Python语言的主要特征 1.开源性 Python和大多数的支撑库和工具都是开源的,通常可以非常灵活的使用而且有开放的协议. 2.解释性 也可以使用Cpython完成将解释性语言转化为实施可执行 ...
- python中 urllib, urllib2, httplib, httplib2 几个库的区别
转载 摘要: 只用 python3, 只用 urllib 若只使用python3.X, 下面可以不看了, 记住有个urllib的库就行了 python2.X 有这些库名可用: urllib, urll ...
- Python 开发面试题
Python部分 将一个字符串逆序,不能使用反转函数 求从10到100中能被3或5整除的数的和 What is Python? What are the benefits of using Pytho ...
- python2 httplib 笔记
python2 httplib 笔记 #coding=utf-8 ''' Created on 2014年9月25日 @author: cocoajin ''' import httplib,url ...
- python2 urllib 笔记
python2 urllib 笔记 import urllib base='http://httpbin.org/' ip=base+'ip' r=urllib.urlopen(ip) print r ...
- opencv2.4.13+python2.7学习笔记--使用 knn对手写数字OCR
阅读对象:熟悉knn.了解opencv和python. 1.knn理论介绍:算法学习笔记:knn理论介绍 2. opencv中knn函数 路径:opencv\sources\modules\ml\in ...
- python2与python3之间的主要区别
python2与python3之间的主要区别 print py2:print语句,语句就意味着可以直接跟要打印的东西,如果后面接的是一个元组对象,直接打印 py3:print函数,函数就以为这必须要加 ...
随机推荐
- 开始编写寄几的 CSS 基础库
前言 在现在的互联网业务中,前端开发人员往往需要支持比较多的项目数量.很多公司只有 1-2 名前端开发人员,这其中还不乏规模比较大的公司.这时前端同学就需要独挡一面支持整个公司上下的前端业务,项目如流 ...
- Python爬取百度贴吧数据
本渣除了工作外,在生活上还是有些爱好,有些东西,一旦染上,就无法自拔,无法上岸,从此走上一条不归路.花鸟鱼虫便是我坚持了数十年的爱好. 本渣还是需要上班,才能支持我的业余爱好.上班时间还是尽量访问外网 ...
- tensorflow softsign函数应用
1.softsign函数 图像 2.tensorflow softsign应用 import tensorflow as tf input=tf.constant([0,-1,2,-30,30],dt ...
- LINUX下的远端主机登入 校园网络注册 网络数据包转发和捕获
第一部分:LINUX 下的远端主机登入和校园网注册 校园网内目的主机远程管理登入程序 本程序为校园网内远程登入,管理功能,该程序分服务器端和客户端两部分:服务器端为remote_server_udp. ...
- 【samba】samba 用户权限配置(转)
首先要保证你的samba安装并配置好,关于安装和配置samba请参考此文章 http://blog.csdn.net/linglongwunv/archive/2010/01/19/5212875.a ...
- 内核对象kobject和sysfs(3)——kobj分析
内核对象kobject和sysfs(3)--kobj分析 在分析kobj之前,先总结下kobj的功能: 实现结构的动态管理: 实现内核对象到sysfs的映射: 实现自定义属性的管理. 关注一下kobj ...
- Dinic算法(研究总结,网络流)
Dinic算法(研究总结,网络流) 网络流是信息学竞赛中的常见类型,笔者刚学习了最大流Dinic算法,简单记录一下 网络流基本概念 什么是网络流 在一个有向图上选择一个源点,一个汇点,每一条边上都有一 ...
- SQL Server Alwayson创建代理作业注意事项
介绍 Always On 可用性组活动辅助功能包括支持在辅助副本上执行备份操作. 备份操作可能会给 I/O 和 CPU 带来很大的压力(使用备份压缩). 将备份负荷转移到已同步或正在同步的辅助副本后, ...
- git push解决办法: ! [remote rejected] master -> master (pre-receive hook declined)
前天准备上传一个project到GitLab上,但是试了很多次都上传不上去,报错如下: ! [remote rejected] master -> master (pre-receive hoo ...
- 【 js 基础 】【 源码学习 】backbone 源码阅读(一)
最近看完了 backbone.js 的源码,这里对于源码的细节就不再赘述了,大家可以 star 我的源码阅读项目(https://github.com/JiayiLi/source-code-stud ...