python 版本问题大全
坑一
一下午的时间又让这个不是问题的问题给白白给浪费了,此片文章仅仅纪念一下浪费掉的宝贵时间
新式类与经典类问题
class qwe:
def __init__(self, name):
self.name = name @property
def f4(self):
temp = self.name
return temp @f4.setter
def f4(self, value):
print '打印的东西'
self.name = value a = qwe("111")
a.f4 = 456
print(a.f4)
在特性的使用过程中,在2.7的版本中如果类不继承object的话,@property将不起作用
坑二
Python3中内置类型bytes和str用法及byte和string之间各种编码转换 Python 3最重要的新特性大概要算是对文本和二进制数据作了更为清晰的区分。文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示。
bytes类型在python3中才新加入的,在python2中没有这个函数
python2中
a = 'hello'
print type(a)
print type(bytes(a))
print type(str(a)) <type 'str'>
<type 'str'>
<type 'str'>
python3中
b = 'hello'
print(type(b))
print(type(bytes(b,encoding='utf8')))
print(type(str(b))) <class 'str'>
<class 'bytes'>
<class 'str'>
坑三
人们常常会忽视Python 3在整数除法上的改动,而导致在代码迁移的过程中出现错误,而且在面试题中也有出现,所以值得总结一下
import platform
print (platform.python_version()) print ('=========================')
print ('3 / 2 =', 3 / 2)
print ('3 // 2 =', 3 // 2)
print ('3 % 2 =', 3 % 2)
print ('=========================')
print ('3 / 2.0 =', 3 / 2.0)
print ('3 // 2.0 =', 3 // 2.0)
print ('3 % 2.0 =', 3 % 2.0)
print ('=========================')
print ('3.0 / 2.0 =', 3.0 / 2.0)
print ('3.0 // 2.0 =', 3.0 // 2.0)
print ('3.0 % 2.0 =', 3.0 % 2.0)
print ('=========================')
python 2.7.13
2.7.13
=========================
3 / 2 = 1
3 // 2 = 1
3 % 2 = 1
=========================
3 / 2.0 = 1.5
3 // 2.0 = 1.0
3 % 2.0 = 1.0
=========================
3.0 / 2.0 = 1.5
3.0 // 2.0 = 1.0
3.0 % 2.0 = 1.0
=========================
python 3.2.0
3.2.0
=========================
3 / 2 = 1.5
3 // 2 = 1
3 % 2 = 1
=========================
3 / 2.0 = 1.5
3 // 2.0 = 1.0
3 % 2.0 = 1.0
=========================
3.0 / 2.0 = 1.5
3.0 // 2.0 = 1.0
3.0 % 2.0 = 1.0
=========================
由上面的执行结果可以看出来,两者最主要的不同在于整数除法上的改动,在python2系列中俩个整数间相除得到的结果为整数,而在python3中俩整数相除的结果最少保留一位小数(整除一位小数,非整除该几位就几位)
python 版本问题大全的更多相关文章
- python 库资源大全
偶然的机会翻到这篇文章,很全面,来源: Python 资源大全中文版 哪些 Python 库让你相见恨晚? 环境管理 管理 Python 版本和环境的工具 p:非常简单的交互式 pyth ...
- python库包大全(转)
python 库资源大全 转自: Python 资源大全中文版 环境管理 管理 Python 版本和环境的工具 p:非常简单的交互式 python 版本管理工具.官网 pyenv:简单的 Python ...
- Python常用模块大全
Python常用模块大全 os模块: os.remove() 删除文件 os.unlink() 删除文件 os.rename() 重命名文件 os.listdir() 列出指定目录下所有文件 os.c ...
- python中文资源大全
Python 资源大全中文版 我想很多程序员应该记得 GitHub 上有一个 Awesome - XXX 系列的资源整理.awesome-python 是 vinta 发起维护的 Python 资源列 ...
- python第三方库大全
环境管理 管理 Python 版本和环境的工具 p:非常简单的交互式 python 版本管理工具.官网 pyenv:简单的 Python 版本管理工具.官网 Vex:可以在虚拟环境中执行命令.官网 v ...
- Python精选库大全,建议收藏留用!
Python为啥这么火,这么多人学,就是因为简单好学,功能强大,整个社区非常活跃,资料很多.而且这语言涉及了方方面面,比如自动化测试,运维,爬虫,数据分析,机器学习,金融领域,后端开发,云计算,游戏开 ...
- 提取bmp图片的颜色信息,可直接framebuffer显示(c版本与python版本)
稍微了解了下linux的framebuffer,这是一种很简单的显示接口,直接写入像素信息即可 配置好的内核,会有/dev/fbn 的接口,于是想能否提前生成一个文件,比如logo.fb,里面仅包含像 ...
- Centos7下安装python,查看python版本
安装Centos的时候,一般会自带默认安装python2.x 一般用python -V可以查看python版本. 我当时安装的时候,运行了那个语句,但是却显示了一大堆出来,虽然里面也带有版本信息,但是 ...
- LInux升级Python版本2.7.11所遇问题汇总
首先请原谅我使用校园网络,基本上打不开谷歌,网络搜取得帮助均来自度娘. 对于我这个linux新手 IT 新手来说,自己升级点东西好担心,万一出错,可能都要重来.... 参照度娘内容和自己摸索,今天晚上 ...
随机推荐
- php函数的可变参数
<?php function add() { $arr = func_get_args(); //func_num_args() $sum =0; for($i=0;$i<count($a ...
- OD调试篇13
今天的程序比较大,听说还是比较牛的程序,不过破解它的一个比较老的版本的.打开程序看看. 点击about 然后点enter registration code 输入name 以及密钥之后,会 ...
- 【转】LokiJS:纯JavaScript实现的轻量级数据库
原文转自:http://www.html5cn.org/article-7091-1.html LokiJS一个轻量级的面向文档的数据库,由JavaScript实现,性能高于一切.目的是把JavaSc ...
- sqlserver查看被锁表、解锁
查看别锁表 select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) tableName from sys.d ...
- oop、configparser、xml模块
本节大纲:一:在python中,有两种编程思想.1:函数式编程.2:oop.无论是函数式编程还是oop都是相辅相成.并不是说oop比函数式编程就好.各有各的优缺点.在其他语言中java等只能以面向对象 ...
- spring data jpa hibernate jpa 三者之间的关系
JPA规范与ORM框架之间的关系是怎样的呢? JPA规范本质上就是一种ORM规范,注意不是ORM框架——因为JPA并未提供ORM实现,它只是制订了一些规范,提供了一些编程的API接口,但具体实现则由服 ...
- 在线聊天室的实现(1)--websocket协议和javascript版的api
前言: 大家刚学socket编程的时候, 往往以聊天室作为学习DEMO, 实现简单且上手容易. 该Demo被不同语言实现和演绎, 网上相关资料亦不胜枚举. 以至于很多技术书籍在讲解网络相关的编程时, ...
- xmind的第九天笔记
- 在ubuntu下安装QQ
(参考链接 :http://jingyan.baidu.com/album/47a29f24577776c01423991a.html?picindex=3) 一 .安装 wine 1.下载一个 ...
- JSP知识点汇总
有几种方法可以实现服务器内部跳转? 使用request对象提供的方法:request.getRequestDispatcher(String URI).forward(ServletRequest r ...