#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的主要区别笔记的更多相关文章

  1. Python2.x与Python3.x的主要区别(转)

    python2.x和python3.x版本有很大的差异,除了依赖包的名称变化很大外,其主要差异总结如下: 1)print函数 Python3中,print函数的括号是必须的,Python2是可选的. ...

  2. python中urllib, urllib2,urllib3, httplib,httplib2, request的区别

    permike原文python中urllib, urllib2,urllib3, httplib,httplib2, request的区别 若只使用python3.X, 下面可以不看了, 记住有个ur ...

  3. 大数据时代的Python金融应用-Day1-Python与金融应用概述

    一.Python语言的主要特征 1.开源性 Python和大多数的支撑库和工具都是开源的,通常可以非常灵活的使用而且有开放的协议. 2.解释性 也可以使用Cpython完成将解释性语言转化为实施可执行 ...

  4. python中 urllib, urllib2, httplib, httplib2 几个库的区别

    转载 摘要: 只用 python3, 只用 urllib 若只使用python3.X, 下面可以不看了, 记住有个urllib的库就行了 python2.X 有这些库名可用: urllib, urll ...

  5. Python 开发面试题

    Python部分 将一个字符串逆序,不能使用反转函数 求从10到100中能被3或5整除的数的和 What is Python? What are the benefits of using Pytho ...

  6. python2 httplib 笔记

    python2  httplib 笔记 #coding=utf-8 ''' Created on 2014年9月25日 @author: cocoajin ''' import httplib,url ...

  7. python2 urllib 笔记

    python2 urllib 笔记 import urllib base='http://httpbin.org/' ip=base+'ip' r=urllib.urlopen(ip) print r ...

  8. opencv2.4.13+python2.7学习笔记--使用 knn对手写数字OCR

    阅读对象:熟悉knn.了解opencv和python. 1.knn理论介绍:算法学习笔记:knn理论介绍 2. opencv中knn函数 路径:opencv\sources\modules\ml\in ...

  9. python2与python3之间的主要区别

    python2与python3之间的主要区别 print py2:print语句,语句就意味着可以直接跟要打印的东西,如果后面接的是一个元组对象,直接打印 py3:print函数,函数就以为这必须要加 ...

随机推荐

  1. (一)SQL关联查询的使用技巧 (各种 join)

    ---恢复内容开始--- (一)SQL关联查询的使用技巧 (各种 join) 这几天因为工作的时候,发现自己的sql语句基础不是很好,特意研究了一下,发现sql语句真的是博大精深,sql语句不仅是要查 ...

  2. common js CMD/AMD 是什么 和他们之间的联系区别

    知道JS有模块化开发的说法,也偶尔听过requireJs,AMD,CMD等等名字,甚至使用node的时候,还用过require之类的方法,但是对这些一直没有一个明确的认识和概念.想必这就是许多新手刚接 ...

  3. WAS 部署 Birt 报表出现 error.CannotStartupOSGIPlatform 和 更新web.xml

    在WAS7.0中部署Birt报表会出现error.CannotStartupOSGIPlatform错误,通常需要这样修改 1.依次打开Applications->WebSphere enter ...

  4. 表达式求值(二叉树方法/C++语言描述)(三)

    二叉树方法求值对运算数处理的方法与栈方法求值不太相同,除了将字符串中的运算数转换为浮点类型外,还需要生成新的节点: void Calculator::dealWithNumber(char *& ...

  5. centos7源码编译安装Ansible详细部署

    一.基础介绍==========================================================================================ansi ...

  6. macOS Sierra Version 10.12.6 环境下Tomcat的下载与安装以及InterlliJ IDEA 2017.2 环境下配置Tomcat 与创建Web项目

    一.Tomcat的下载与安装 1.官网(http://tomcat.apache.org/)下载Tomcat 9.0 Core:zip包: 2.解压到指定的文件夹即可安装完成: 3.测试是否安装成功 ...

  7. 详解.Net 如何上传自己的包到Nuget平台以及如何使用Nuget包管理器

    首先需要一个Nuget账户,可以在官网注册:https://www.nuget.org.已有账户略. 需要一个ApiKeys,登录之后,在我的账户里找到ApiKeys进去; 创建ApiKeys 下载N ...

  8. init.ora, pfile, spfile

    实例启动时,查找初始化参数文件的顺序为: spfile<sid>.oraspfile.orainit<sid>.ora 如果以上3个文件都不存在,则实例无法启动. init.o ...

  9. oracle监控脚本【转】

    1. 监控事例的等待 select event,sum(decode(wait_Time,0,0,1)) "Prev", sum(decode(wait_Time,0,1,0)) ...

  10. 学习笔记TF048:TensorFlow 系统架构、设计理念、编程模型、API、作用域、批标准化、神经元函数优化

    系统架构.自底向上,设备层.网络层.数据操作层.图计算层.API层.应用层.核心层,设备层.网络层.数据操作层.图计算层.最下层是网络通信层和设备管理层.网络通信层包括gRPC(google Remo ...