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函数,函数就以为这必须要加 ...
随机推荐
- 第三篇:RESTful介绍
在介绍restful之前先放一张从之前文章评论里看到的图,我觉得它把soap和rest之间的一些区别形容地非常形象. 在第一篇和第二篇中我们也介绍过,soap协议传递的报文要基于xml格式的soap消 ...
- C语言基础 - 实现单向链表
回归C基础 实现一个单向链表,并有逆序功能 (大学数据结构经常是这么入门的) //定义单链表结构体 typedef struct Node{ int value; struct Node *next; ...
- 【css】过度效果
http://kissygalleryteam.github.io/girlLink/doc/demo/index.html
- Ubuntu16.04配置Mac主题
作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7072878.html 觉得有帮助?欢迎来打赏 Ubuntu配置Mac主题 下 ...
- 利用GPU实现大规模动画角色的渲染
0x00 前言 我想很多开发游戏的小伙伴都希望自己的场景内能渲染越多物体越好,甚至是能同时渲染成千上万个有自己动作的游戏角色就更好了. 但不幸的是,渲染和管理大量的游戏对象是以牺牲CPU和GPU性能为 ...
- year:2017 month:08 day:04
2017-08-04 JAVAse 1.final修饰符 final可以修饰类,成员方法,成员变量(static 修饰符不可以修饰类) final的初始化在对象被实例化前即可final 修饰的方法不可 ...
- Samba服务部署
Samba,是种用来让UNIX系列的操作系统与微软Windows操作系统的SMB/CIFS(Server Message Block/Common Internet File System)网络协议做 ...
- 51. leetcode 530. Minimum Absolute Difference in BST
530. Minimum Absolute Difference in BST Given a binary search tree with non-negative values, find th ...
- 时间戳,取值问题 and 倒计时的前端处理
JavaScript 获取当前时间戳: 第一种方法: var timestamp = Date.parse(new Date()); 获取的时间戳是把毫秒改成000显示, 结果:12809773300 ...
- Fiddler基础使用二之捕获手机应用https请求
Fiddler是一款非常流行并且实用的http抓包工具,它的原理是在本机开启了一个http的代理服务器,然后它会转发所有的http请求和响应, 因此,它比一般的firebug或者是chrome自带的抓 ...