本书重点: 这本书并不是一本完备的 Python 使用手册,而是会强调 Python 作为编程语言独有的特性,这些特性或者是只有 Python 才具备的,或者是在其他大众语言里很少见的. Python语言核心以及它的一些库会是本书的重点. 目标读者: 正在使用 Python,又想熟悉 Python 3 的程序员 . 主题: 第一部分: 第一部分只有单独的一章,讲解的是 Python 的数据模型(data model),以及如何为了保证行为一致性而使用特殊方法(比如 __repr__),毕竟 Py…
2.1 内置序列类型概览 Python 标准库用 C 实现了丰富的序列类型,列举如下. 容器序列 list. tuple 和 collections.deque 这些序列能存放不同类型的数据. 扁平序列 str. bytes. bytearray. memoryview 和 array.array,这类序列只能容纳一种类型. 序列类型还能按照能否被修改来分类. 可变序列 list. bytearray. array.array. collections.deque 和 memoryview. 不…
Python 最好的品质之一是一致性. 魔术方法(magic method)是特殊方法的昵称.特殊方法也叫双下方法. 1.1 一摞Python风格的纸牌 import collections Card = collections.namedtuple('Card', ['rank', 'suit']) # 创建了一个有名字的元组 class FrenchDeck: # 隐式继承了Object类 ranks = [str(n) for n in range(2, 11)] + list('JQKA…
Python深入学习之<Fluent Python> Part 1 从上个周末开始看这本<流畅的蟒蛇>,技术是慢慢积累的,Python也是慢慢才能写得优雅(pythonic)的. 数据模型 python纸牌 import collections # 用来构建一个只有属性,没有方法的简单类,来代表扑克牌的号码和花色. Card = collections.namedtuple('Card', ['rank', 'suit']) class FrenchDeck: # 扑克牌的号码 r…
Fluent Python by Luciano Ramalho https://learning.oreilly.com/library/view/fluent-python/9781491946237/ Python’s simplicity lets you become productive quickly, but this often means you aren’t using everything it has to offer. With this hands-on guide…
Fluent Python 读书手记 Python数据模型:特殊方法用来给整个语言模型特殊使用,一致性体现.如:__len__, __getitem__ AOP: zope.inteface 列表推导(list comprehensive)和 表达式生成器(generator expression),分别用 [...] 和 (...)表未.后者是迭代生成,更节省内存. 元组tuple两大功能特性:不可变.用作数据记录结构(位置信息).元组里的元素最好也是不可变数据. array 和 列表相比的区…
关于Python的memoryview内置类,搜索国内网站相关博客后发现对其解释都很简单, 我觉得学习一个新的知识点一般都要弄清楚两点: 1, 什么时候使用?(也就是能解决什么问题) 2,如何使用? 对照Fluent Python一书2.9.2 以及网上相关资料后,对memoryview内置类做一些总结: (1)什么时候应该使用memoryview内置类 Travis Oliphant在statkoverflow上是如此回答的: # A memoryview is essentially a g…
Fluent Python一书9.4节比较了 Classmethod 和 Staticmethod 两个装饰器的区别: 给出的结论是一个非常有用(Classmethod), 一个不太有用(Staticmethod). 今天我们就对这两个装饰器做更深入的了解和比较, (一) Classmethod: (1)什么时候使用Classmethod? classmethod最常见的用途是定义备选构造方法 (2)如何使用Classmethod? 下面我们用一个示例来展示如何使用classmethod, 假如…
Fluent Python 9.6节讲到hashable Class, 为了使Vector2d类可散列,有以下条件: (1)实现__hash__方法 (2)实现__eq__方法 (3)让Vector2d向量不可变 如何让Vector2d类实例的向量只读呢?可以使用property,如下所示: class Vector2d: def __init__(self, x, y): self.__x = x self.__y = y @property # The @property decorator…
在Fluent Python一书第八章有一个示例,未看书以先很难理解这个示例运行的结果,我们先看结果,然后再分析问题原因: 定义了如下Bus类: class Bus: def __init__(self, passengers=[]): self.passengers = passengers def pick(self, name): self.passengers.append(name) def drop(self, name): self.passengers.remove(name)…
近日,在阅读<Fluent Python>的第2.9.2节时,有一个关于内存视图的例子,当时看的一知半解,后来查了一些资料,现在总结一下,以备后续查询: 示例复述 添加了一些额外的代码,便于更好理解memoryview >>> import array >>> numbers = array.array('h', [-2, -1, 0, 1, 2]) >>> memv = memoryview(numbers) >>> l…
1 python学习--python环境配置 要学习python语言,光看书看教程还是不好,得动手去写.当然,不管学习什么编程语言,最佳的方式还在于实践. 要实践,先得有一个Python解释器来解释执行我们写下的python代码. 因为python是一门开源的语言,python解释器很多.有CPython,PyPy,Ipython,Jython等. 最常用的还是CPython了.CPython是python官方版本的解释器,是用C语言开发的.我们从python官网下载安装python开发环境后,…
CentOS使用virtualenv搭建独立的Python环境-python虚拟环境 virtualenv可以搭建虚拟且独立的python环境,可以使每个项目环境与其他项目独立开来,保持环境的干净,解决包冲突问题. 一.安装python 可-编译安装:可-yum安装 二.安装virtualenv yum源安装: yum install python-virtualenv virtualenv实际上是一个python包,所以我们可以用easy_install或者pip安装.  easy_insta…
Introduction ffpython is a C++ lib, which is to simplify tasks that embed Python and extend Python. As the author, I am a developer for MMO server. Mainly I use C++ to implement part that needs to response user's requests in realtime, while other log…
python 运行python manege.py runserver时报错:“no module named djangorestframework” 的解决方案 importerror:no module named djangorestframework Django REST framework is a powerful and flexible toolkit that makes it easy to build Web APIs. Some reasons you might w…
https://github.com/upsuper/blog/commit/0214fdd084c4adf2de2ed9912d644fb59ce13a1c +Title: [翻译] AST 模块:用 Python 修改 Python 代码+Date: 2012-03-03 16:47+Tags: PythonCategory: TechniqueSlug: static-modification-of-python-with-python-the-ast-moduleAuthor: Xido…
无论windos还是Linux只要安装了python,配置好了环境变量,则在命令行输入python这个命令的时候就会进入交互模式.在这个模式下可以进行一些简单的python代码编写.退出可以使用exit()方法. Python程序是可以执行的,例如下面代码,保存在hello.py中,如果想要执行这个文件则可以执行命令python hello.py,那么将会输出Hello World. print 'Hello World' 另外,如果想让这个脚本成为可执行文件,则需要在这个文件头上添加 #!/u…
Python:Python学习总结 背景 PHP的$和->让人输入的手疼(PHP确实非常简洁和强大,适合WEB编程),Ruby的#.@.@@也好不到哪里(OO人员最该学习的一门语言). Python应该是写起来最舒服的动态语言了,一下是一些读书笔记,最后会介绍一下高级的用法:Mixin.Open Class.Meta Programming和AOP. 文中有些地方是用2.7开发的,如果您安装的是3.x,有几点需要注意: print "xxx" 要换成 print("xx…
昨天 2018 年 01 月 31 日,农历腊月十五日.20:00 左右,152 年一遇的月全食.血月.蓝月将今晚呈现空中,虽然没有看到蓝月亮,血月.月全食也是勉强可以了,还是可以想像一下一瓶蓝月亮洗衣液悬于空上,耳边是"大家好,我是渣渣灰,给大家推荐一款好玩的游戏--贪玩蓝月......" 22:00左右的样子,月亮已经出来了,坐下来写写博客啦. 对计算机程序员而言,要问当下前沿什么方向最流行?我想在大数据.云计算.人工智能这些方向中,目前位于翘楚的就是大AL(人工智能了),一种产品…
目录 Python介绍(了解) Python解释器发展史(了解) Python解释器(了解) CPython IPython PyPy Jython IronPython 安装Python解释器(掌握) Windows系统 添加环境变量 Mac系统 添加环境变量 第一个Python程序(了解) 其它语言的hello world(了解) C++ C JAVA PHP Ruby GO Python介绍(了解) Python的创始人为吉多·范罗苏姆(Guido van Rossum),如下图,少数几个…
应用领域: 1. 网络爬虫 2. 大数据分析与挖掘 3. 机器学习 4. web应用 5. 游戏开发 6. 自动化运维 入门学习网站: imooc,廖雪峰,黑马 环境变量 --- 就是告诉电脑,你的程序安装在什么地方(.exe文件能被执行到)   也即在命令行下输入python时,能够被找到 python shell Python常量(const) --- 可以自己定义一个(baidu)常量函数,来约束常量 Python容器: 列表list --- 用中括号:元素可重复可修改:存放各种类型的对象…
Python语言概述 计算机语言概述 语言:交流工具,沟通媒介 计算机语言:人和计算机交流的工具,翻译官 Python语言简述 Python是计算机语言的一种 Python编程语言: 代码:人类语言,通过代码命令机器,跟机器交流 Python解释器:就是那个担任翻译工作的二狗子同学 流程: 写代码 执行:由翻译官(Python解释器)把命令(Code)翻译给机器,同时把机器结果 翻译给我们 Python读音问题:英:Python(拍森)    美:Python(拍桑) Python简史: 198…
最近博主因为学习<云计算导论>一课,需要在Windows上搭建Saprk,故在网上找了相关教程搭建,步骤如下: 1. Scala 2.Spark 3.Handoop 但是不管博主怎么修正,在命令行输入“spark-shell”时,都会出现错误: Missing Python executable 'python', defaulting to '............ 对此博主找到了解决方法,如果你的报错也是这样,那么就按如下解决便可: 环境变量: 新建SPARK_HOME变量,变量值为:F…
1. Python介绍 -程序员减少开发成本 创业性公司 - Python使用较多,开发效率高 老牌大公司 - 有部门使用 -应用领域 •自动化运维 -- 安装Linux 自带 Python -- 现成的库较多,开发效率高 •自动化测试 •大数据分析 •爬虫 •Web 2. Python和其他语言对比 - C: 机器码 - 其他高级语言:字节码 -> 机器码 go语言擅长处理网络并发 3. Python的种类 - CPython: 代码 -> C字节码 -> 机器码(一行一行) - Py…
调试(debug) 将可疑环节的变量逐步打印出来,从而检查哪里是否有错. 让程序一部分一部分地运行起来.从核心功能开始,写一点,运行一点,再修改一点. 利用工具,例如一些IDE中的调试功能,提高调试效率.   Python CMD python -m trace -t <py file> python -m dis <py file> 内置trace模块:打印所有执行的语句 内置dis模块:分析字节码   Linux   strace -p pid # 用系统命令跟踪系统调用 Py…
基于Python实现的ssh兼sftp客户端   by:授客 QQ:1033553122 实现功能 实现ssh客户端兼ftp客户端:实现远程连接,执行linux命令,上传下载文件 测试环境 Win7 64位 Python 3.3.4 paramiko 1.15.2 下载地址: https://pypi.python.org/pypi/paramiko/1.15.2 https://pan.baidu.com/s/1i4SJ1CL cryptography-1.0-cp34-none-win_am…
1.0.0 Summary Tittle:[Python]-NO.97.Note.2.Python -[Python 基本数据类型] Style:Python Series:Python Since:2018-07-08 End:2018-07-08 Total Hours:30+ Degree Of Diffculty:5 Degree Of Mastery:5 Practical Level:5 Desired Goal:5 Archieve Goal:3 Gerneral Evaluati…
Awesome Python A curated list of awesome Python frameworks, libraries and software. Inspired by awesome-php. Awesome Python Environment Management 环境管理 Package Management              软件包管理 Package Repositories              软件源 Distribution          …
1.0.0 Summary Tittle:[Python]-NO.95.Note.1.Python -[Python 老男孩 基础]- Style:Python Series:Python Since:2018-07-08 End:2018-07-08 Total Hours:30+ Degree Of Diffculty:5 Degree Of Mastery:5 Practical Level:5 Desired Goal:5 Archieve Goal:3 Gerneral Evaluat…
认识 Python 人生苦短,我用 Python —— Life is short, you need Python  目标 Python 的起源 为什么要用 Python? Python 的特点 Python 的优缺点 01. Python 的起源 Python 的创始人为吉多·范罗苏姆(Guido van Rossum)  1989 年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的解释程序,作为 ABC 语言的一种继承(感觉下什么叫牛人) ABC 是由吉多参加设计…