python版贴吧_【和我一起学Python吧】Python3.0与2.X版本的区别
做为一个前端开发的码农,却正在阅读最新版的《A byte of Python》。发现Python3.0在某些地方还是有些改变的。准备慢慢的体会,与老版本的《A byte of Python》做对比,最后再去查阅官方网站的文档。
1.
如果你下载的是最新版的Python,就会发现所有书中的Hello World例子将不再正确。
Old:
print "Hello World!" #打印字符串
New:
print("Hello World!")
将字符串放到括号中print出来,这种写法对于我这种学习Java出身的人来说,很是亲切啊:)
2.
Old:
guess = int(raw_input('Enter an integer : ')) #读取键盘输入的方法
New:
guess = int(input('Enter an integer : '))
方法名变得更加容易记!
3.
加入了一个新的nonlocal statement,非局部变量,它的范围介于global和local之间,主要用于函数嵌套,用法如下:
#!/usr/bin/python
# Filename: func_nonlocal.py
def func_outer():
x = 2
print('x is', x)
def func_inner():
nonlocal x
x = 5
func_inner()
print('Changed local x to', x)
func_outer()
4.
VarArgs parameters,不知道这个翻译成什么比较妥当?先看例子:
#!/usr/bin/python
# Filename: total.py
def total(initial=5, *numbers, **keywords):
count = initial
for number in numbers:
count += number
for key in keywords:
count += keywords[key]
return count
print(total(10, 1, 2, 3, vegetables=50, fruits=100))
当在参数前面使用*标识的时候,所有的位置参数(1,2,3)作为一个list传递。
当在参数前面使用**标识的时候,所有的关键参数(vegetables=50, fruits=100)作为一个dictionary传递。
5.
关于Packages的话题,我没看懂。。。哪位大虾帮忙讲解下?
6.
在数据结构中,多了一种类型:set
Set是一种无序的简单对象的集合,当我们关心一个对象是否在一个集合中存在,而顺序和出现的次数是次要的时候,可以使用set。
7.
关于os.sep方法,(set是separator,分隔符的缩写)
作者的一个很晕菜的例子:
Old:
target_dir = '/mnt/e/backup/'
target = target_dir + time.strftime('%Y%m%d%H%M%S') + '.zip'
New:
target_dir = 'E:\\Backup'
target = target_dir + os.sep + time.strftime('%Y%m%d%H%M%S') + '.zip'
os.sep的功能是自动辨别操作系统,给出不同的分隔符,Windows上是\\,Linux上是/,原理我是明白了,功能也很不错,但是作者的例子。。。。只有一处使用了os.sep,其他的地方还是老的写法啊(E:\\)
8.
可以使用@修饰符声明一个类方法:
@classmethod
def howMany(klass):
'''Prints the current population.'''
print('We have {0:d} robots.'.format(Robot.population))
9.
可以将以个类用Metaclasses的方式声明为抽象类抽象方法
from abc import *
class SchoolMember(metaclass=ABCMeta):
'''Represents any school member.'''
def __init__(self, name, age):
self.name = name
self.age = age
print('(Initialized SchoolMember: {0})'.format(self.name))
@abstractmethod
def tell(self):
'''Tell my details.'''
print('Name:"{0}" Age:"{1}"'.format(self.name, self.age), end=" ")
#pass
10.
文件读写的模式又增加了两种:文本本件('t')二进制文件('b')。
11.将打开文件的操作放到使用with语句修饰的方法中,书上说好处是让我们更专注于文件操作,让代码看起来不凌乱,我一时间还不能体会with的好处,希望大家指点。
#!/usr/bin/python
# Filename: using_with.py
from contextlib import context
@contextmanager
def opened(filename, mode="r")
f = open(filename, mode)
try:
yield f
finally:
f.close()
with opened("poem.txt") as f:
for line in f:
print(line, end='')
12.python3.0中添加了logging module,给我的感觉类似于Java中的log4j,直接看代码:
import os, platform, logging
if platform.platform().startswith('Windows'):
logging_file = os.path.join(os.getenv('HOMEDRIVE'),
os.getenv('HOMEPATH'), 'test.log')
else:
logging_file = os.path.join(os.getenv('HOME'), 'test.log')
logging.basicConfig(
level=logging.DEBUG,
format='%(asctime)s : %(levelname)s : %(message)s',
filename = logging_file,
filemode = 'w',
)
logging.debug("Start of the program")
logging.info("Doing something")
logging.warning("Dying now")
python版贴吧_【和我一起学Python吧】Python3.0与2.X版本的区别相关推荐
- Python 图像 一样大小_#带你学Python# 表白利器:用Python发微信表情画-带你认识图片的秘密...
首先感谢大家对上篇文章"python实现传染病模型"的肯定: 孙小白:#带你学Python# 疫情当前,在家没事?你也可以用Python预测疫情发展zhuanlan.zhihu. ...
- 小学生python编程写游戏_小学生开始学Python,开发AI的首选编程语言:推荐一波Python书单...
AlphaGo 都在使用的 Python 语言,是最接近 AI 的编程语言. 教育部考试中心近日发布了"关于全国计算机等级(NCRE)体系调整"的通知,决定自2018年3月起,在全 ...
- mooc数据结构与算法python版期末考试_数据结构与算法Python版-中国大学mooc-试题题目及答案...
数据结构与算法Python版-中国大学mooc-试题题目及答案 更多相关问题 婴儿出生一两天后就有笑的反应,这种笑的反应属于(). [判断题]填制原始凭证,汉字大写金额数字一律用正楷或草书书写,汉字大 ...
- python培训一般多久_零基础学python需要多久
一:明确自己的学习目标.不管我们学习什么样的知识,都要对自己的学习目标有一个明确的认识.只有这样才能朝着目标持续的前进,少走弯路,从而在学习的过程中得到提升,享受整个学习的乐趣. 二:基础的Pytho ...
- python赋值运算符难理解_零基础学 Python(8)运算符 — 算术、比较、赋值、逻辑...
Python 的运算符有:算术运算符.比较运算符.赋值运算符.逻辑运算符.成员运算符.位运算符.身份运算符.本章主要讲解 Python 的算术运算符.比较运算符.赋值运算符.逻辑运算符. 算术运算符 ...
- python中数据读写_【循序渐进学Python——文件中数据的读写以及操作】
[循序渐进学Python--文件中数据的读写以及操作] [循序渐进学Python--文件中数据的读写以及操作] [循序渐进学Python--文件中数据的读写以及操作] 相信大家都想过自己有一天,可以用 ...
- python处在哪个阶段_如何在学Python的过程中更好地成长技术
Python是一门编程语言,所以重点在于如何用好这门语言,只有能够做好项目,才能证明自己逐步掌握好了这门语言.在学习阶段,最终的目标是要尝试着自己用Python搭建一个网站,也算是对自己学习成果的一种 ...
- 32岁学python有前途吗_新手小白学Python有前途吗
很多同学在选择学习python之初,可能都有这样的疑惑:学Python有前途吗?对于新兴的事物,人们慢慢接受是需要一个过程的,那究竟学python有没有前途呢?今天北大青鸟小编就来给大家指导一下迷津. ...
- python新手怎么入门_新手怎么学Python?Python入门必看!
原标题:新手怎么学Python?Python入门必看! 作为新手,学习一门编程语言无疑是一头雾水,上海尚观科技为了让大家在学习Python编程的时候,有一个学习方向,在这里给大家分享了的方法,希望能帮 ...
最新文章
- OO Unit4 UML
- 中国汽车零部件行业需求预测及投资前景建议报告2022-2028年版
- vue 白边 项目_GUIDE.md · kaiking_g/g6-vue-demo - Gitee.com
- 让我安静的写会儿代码
- elasticsearch5.3安装插件head
- oracle 插入timestamp
- 16岁的蒙古摔跤手(狼行天下:追寻狼迹内蒙生态行第三天)
- 第4章 Python 数字图像处理(DIP) - 频率域滤波12 - 选择性滤波 - 带阻
- 【渝粤教育】国家开放大学2018年春季 0674-22T财务管理 参考试题
- 1014.QxORM移植
- Mysql 格式化日期格式
- java map操作_Java HashMap的基本操作
- ASP.NET:返回按钮的解决方案摸索
- IntelliJ IDEA For Mac 快捷键,够骚,速度收藏!
- 手机端答题页面_有奖答题来啦!科普知识等你来挑战……
- 【计算机毕业设计】疫情社区管理系统的设计与实现
- LeaRun快速开发平台,.Net Core加持,功能更全面
- 返回值为对象调用拷贝构造函数
- 普适计算-2014/03/28
- 英语考研——目的状语从句