读《流畅的python》第一天】的更多相关文章

这些来自同一家出版社的动物书 像是计算机科学界一盏盏指路明灯 余幼时 初试读 学浅 以为之晦涩难懂 像是老学究咬文嚼字 现在看起来还有些有趣 其实理工男大多都很有趣 这一章介绍了 怎么样去视线一个带有python风格的纸牌类 #!/usr/bin/python3 # -*- coding: utf-8 -*- # @Time : 2021/10/20 9:51 下午 # @Author : Waff1e # @Email : ox01024@163.com # @File : zhipai.py…
python中有些特殊的方法,以双上下划线开头,并以双下划线结束的方法.如__getitem__,这些方法是特殊的方法,供python解释权内部使用,一般来说不需要调用 还有一种是以双下划线开头的,如__xxx,这些方法是私有方法,供类的内部使用,最好不要在外部使用. 如何使用特殊方法 my_object.__len__()这是给内部使用的,要在外部使用应该使用len(my_object),如果my_object是自定义类,python会调用其内部的__len__方法,当然我们可以重写该方法 如…
流畅的Python 致Marta,用我全心全意的爱 第一部分 序幕 第一章 Python数据模型 特殊方法 定义: Python解释器碰到特殊句法时,使用特殊方法激活对象的基本操作,例如python语句len(x) 调用了x.__ len __的方法.这些特殊方法支持以下的语言构架: 迭代 集合类 属性访问 运算符重载 函数和方法的调用 对象的创建和销毁 字符串表示形式和格式化 管理上下文(with块) 命名规则: __ getitem __ (左右两个双下划线,故称为dunder method…
<流畅的Python>这本书是图灵科技翻译出版的一本书,作者Luciano Ramalho. 作者从Python的特性角度出发,以Python的数据模型和特殊方法为主线,主要介绍了python的集合类型(sequence.mapping.set等).把函数作为一等对象来使用.类的构建.新的文件控制流程(生成器.上下文管理器.协程).用描述符来从底层解释Python对象属性的存储等各个方面. 书中主要围绕Python标准库展开,不会涉及太多的标准库以外的包.虽然它们也很实用. 建议大家可以把前言…
流畅的python 第1章 python数据模型 ---1.1 一摞Python风格的纸牌 特殊方法,即__method__,又被称为魔术方法(magic method)或者双下方法(dunder-method). 特殊方法的存在是为了被python解释器调用的 collections.namedtuple用于构建一个只有少数属性但是没有方法的对象 通过实现__getitem__,可以使对象有[]操作,支持切片操作,可迭代 for i in x:实际上是用了iter(x),而这个函数背后则是x.…
流畅的python中有很多奇技淫巧,整本书都在强调如何最大限度地利用Python 标准库.介绍了很多python的不常用的数据类型.操作.库等,对于入门python后想要提升对python的认识应该有帮助.目前读一遍记录了一些有共鸣的操作: Python内置序列类型的主要分类: 按可存放的元素类型分为:容器序列和扁平序列 1. 容器序列,就是什么都能作为元素往里放,包括另一个序列.需要注意的是,如果元素是序列类型,那么存放的往往是引用,需要小心. 常见的容器序列包括:list,tuple,arr…
对象引用.可变性和垃圾回收 变量不是盒子 人们经常使用“变量是盒子”这样的比喻,但是这有碍于理解面向对象语言中的引用式变量.Python 变量类似于 Java 中的引用式变量,因此最好把它们理解为附加在对象上的标注. 在示例 8-1 所示的交互式控制台中,无法使用“变量是盒子”做解释.图8-1 说明了在 Python 中为什么不能使用盒子比喻,而便利贴则指出了变量的正确工作方式. 示例 8-1 变量 a 和 b 引用同一个列表,而不是那个列表的副本 >>> a = [1, 2, 3] &…
1.现在在看<流畅的Python>这本书,看了三页就发现,这本书果然不是让新手来入门的,一些很常见的知识点能被这个作者玩出花来, 唉,我就在想,下面要分析的这些的代码,就算我费劲巴拉的看懂了,又有什么用呢,我其实不想靠着技术吃饭,但是现在在这个岗位上, 就得在其位谋其职,悲哀.我在敲代码方面也没什么天赋,也没什么热情,老话说得好,‘女怕嫁错郎,男怕入错行’, 所以我得从IT行业抽出身来.anyway,进入正题. 2.python解释器碰到特殊的句法时,会使用特殊方法去激活一些基本的对象操作,这…
Object References, Mutability, and Recycling 本章章节: Variables Are Not Boxes identity , Equality ,  Aliases Copies are shallow by default Function Parameters as references del and Garbage Collection Weak References Tricks Python Plays with Immutable Va…
python 第一站,豆瓣-美国末日评论小爬虫 最近学习python,但是光是看书看视频学习,总是觉得掌握的不够扎实.所以就决定自己去写写爬虫,当带着目的性去学,也许更容易发现自己需要什么.这是酝酿多日之后的第一个作品,简单的不能再简单的一个小爬虫. 使用工具: python3 (windows环境) re , urllib , urllib2 , json(这几个是python基本库中的,虽然json好像没用到- -!) BeautifulSoup4(非python基本库,需要自己安装) 思路…
Python第一天  安装  shell  文件 python里面一切都是对象 object 代码缩进:建议用四个空格来缩进,不要用tab键 安装 Linux自带python,windows需要下载msi文件进行安装,还要指定环境变量 #查看python版本和当前安装的python版本python -V rpm -qa|grep pythonpython-2.6.6-52.el6.x86_64 python shell解释器交互python shellipython(需要安装第三方模块ipyth…
数据类型: 什么是数据? 在计算机科学中,数据是指所有能输入到计算机并被计算机程序处理的符号的介质的总称,是用于输入电子计算机进行处理,具有一定意义的数字字母.符号和模拟量等的统称.现在计算机存储和处理对象十分广泛,表示这些对象的数据也随之变得越来越复杂. 举个例子: 在游戏当中你会有你的自己的人物.装备.等级.金钱等等.这些都是数据,但是在Python中这些数据都有自己各自的类型那么他们该如何表示呢? 例如用cs来说 名字:Chares_Lee-------------------->字符串…
1.Hello World程序的两种方法     在windows下执行 1.编辑器里输入,不用编译 print("Hello World!") 直接就可以运行      2.可以存成一个程序再运行 存成一个文本,新建一个.py文件.到cmd中执行   运行脚本 python  Hello.py   在linux下执行  在linux 下创建一个文件叫hello.py,并输入   print("Hello World!")  执行前需给予 hello.py 执行权限…
#cnblogs_post_body h2 { background: linear-gradient(to bottom, #18c0ff 0%,#0c7eff 100%); color: #fff; height: 55px width:100% -moz-border-radius: 3px; padding: 3px; margin: 10px 0px; font-family: "微软雅黑", "宋体", "黑体", Arial } P…
Python版本:Python 3.6.1 0x01 命令行交互 在交互式环境的提示符>>>下,直接输入代码,按回车,就可以立刻得到代码执行结果.现在,试试输入100+200,看看计算结果是不是300: >>> 100 + 200 300 让Python打印出指定的文字,可以用print()函数,然后把希望打印的文字用单引号或者双引号括起来,但不能混用单引号和双引号: >>> print("Hello World!") Hello…
这一周将开启学习python第一周,开始之前学过python但是没有学精,到现在基本快忘记了,只能记住大概什么样子了emmm 作业计算bmi 这周作业为计算bmi,小明身高1.75,体重80.5.请根据bmi公式帮小明计算他的bmi指数,并根据bmi指数: 低于18.5:过轻 18.5-25:正常 25-28:过重 28-32:肥胖 高于32:严重肥胖 用if-elif判断并打印结果 体质指数(bmi)= 体重(kg)/ 身高^2 开始编了一个代码但是错了,不知道错在哪 height, weig…
Python简介 Python是一种计算机程序设计语言.是一种动态的.面向对象的脚本语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的.大型项目的开发. --摘自360百科 Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构. Python 是一种解释型语言: 这意味着开发过程中没有了…
目录 Python第一周基本语句学习整理 一.字符串切割 二.体重单位转换 三.计算器的实现 四.猜年龄游戏 Python第一周基本语句学习整理 一.字符串切割 代码实现: s = 'luowenxiang' # 0,1,2,3,4,5,6,7,8,9-->递增 # 递减<--,-5 ,-4,-3,-2,-1 print(s[:]) # luowenxiang 全输出 print(s[:-1]) # luowenxian 要头不要尾 反向递减 print(s[2:]) # owenxiang…
1. 报错如下: SyntaxError: Non-UTF-8 code starting with '\xd3' in file D:\流畅学python\ex34.py on line 4, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details 2. 解决办法: 1> 首行添加 # -*- coding:utf-8 -*- 2> 更改编码格式 File-> Settings->…
1.跟运算符无关的特殊方法了解: 2.跟运算符相关的特殊方法了解: 3.内置的序列类型分类: 容器序列 list.tuple 和 collections.deque 这些序列能存放不同类型的数据. 扁平序列 str.bytes.bytearray.memoryview 和 array.array,这类序列只能容纳一种类型. 容器序列存放的是它们所包含的任意类型的对象的引用,而扁平序列里存放的是值而不是引用.换句话说,扁平序列其实是一段连续的内存空间.由此可见扁平序列其实更加紧凑,但是它里面只能存…
第1章 python数据模型 python的写法是由背后的魔法方法实现的,比如obj[key],解释器实际调用的是obj.__getitem__(key) 作者把魔法方法叫做双下方法,因为有两个下划线 collections.namedtuple可以用来创建只有少数属性但没有方法的对象,比如 beer_card = Card('7', 'diamonds') random.choice和random.sample不一样的地方在于,sample是返回序列,choice是返回元素,当使用sample…
这本书上来就讲了魔法方法,也叫双下方法.特殊方法,通过两个例子对让读者了解了双下方法的用法,更重要的是,让我一窥Python的语言风格和给使用者的自由度. 第一个例子:一摞Python风格的纸牌: import collections Card = collections.namedtuple('Card', ['rank', 'suit']) class FrenchCard: ranks = [str(n) for n in range(2, 11)] + list('JQKA') suit…
这一章中作者简要的介绍了python数据模型,主要是python的一些特殊方法.比如__len__, __getitem__. 并用一个纸牌的程序来讲解了这些方法 首先介绍下Tuple和nametuple的区别: Nametuple是类似于元组的数据类型.除了能够用索引来访问数据,还支持用方便的属性名来访问数据. 传统的元组访问如下.对每个元素的访问都必须通过索引来找到.这种找法很不直观 tup1=('abc','def','ghi') print tup1[1] 使用nametuple来构造:…
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入门 1 第一个python代码: 在linux上创建第一个.py脚本 #!/usr/bin/env python #-*- coding:utf-8 -*- print "Hello,World" 执行代码: python hellp.py 2 捕获参数: 捕获参数,并存入到集合 print sys.argv 3 模块导入: import hello 4 python编译: 经过编译 成字节码文件 .pyc文件,反编译成 .py    如果.pyc 和 .py 内容相同,…
一.python简介 1.1 python的诞生 python的创始人吉多.范罗苏姆(Guido van Rossum),他在开发python语言之前曾使用过几年的ABC语言,ABC是一门主要用于教学的语言(教计算机系的学生如何设计一门开发语言),Guido在开发python时借鉴了很多ABC语言的特性,所以后来人们包括Guido自己也认为,python语言的前生就是ABC语言,关于创作python语言的初衷,Guido在1996年写的到: 在六年前的1989.12月份,我为了在圣诞假期打发无聊…
一.python简介 1.python下载地址:https://www.python.org/downloads/ Python的创始人为Guido van Rossum.1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,做为ABC 语言的一种继承.之所以选中Python(大蟒蛇的意思)作为程序的名字,是因为他是一个叫Monty Python的喜剧团体的爱好者. 2.Python排行和使用场景: python在从2014年的排名第八升级为2015年…
作者:熊猫烧香 链接:www.pythonheidong.com/blog/article/26/ 来源:python黑洞网 目标读者 本书的目标读者是那些正在使用 Python,又想熟悉 Python 3 的程序员.如果你懂 Python 2,但是想迁移到 Python 3.4 或者更新的版本,也没问题.在写这本书的时候,大多数专业 Python 程序员用的还是 Python 2,因此如果书中出现来自 Python 3 的特性,读者可能会感到陌生,我也会特别地做出解释.然而,本书的主要目的是为…
简介: Python[1]  (英国发音:/ˈpaɪθən/ 美国发音:/ˈpaɪθɑːn/), 是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum于1989年发明,第一个公开发行版发行于1991年. 作者: Python的作者,Guido von Rossum,确实是荷兰人.1982年,Guido从阿姆斯特丹大学(University of Amsterdam)获得了数学和计算机硕士学位.然而,尽管他算得上是一位数学家,但他更加享受计算机带来的乐趣.用他的话说,…
day01(上午): 1.学习方法(建议): 1).不要依赖于我的视频,绝对不要晚上将视频全部在过一遍 2).上课不要记笔记,而且不要用纸质的笔记本去整理笔记 3).不要只看不敲,代码方面我们需要做到:"敲.猛敲.使劲敲.往死里敲..." 4).纸上得来终觉浅,绝知此事要躬行 5).绝对不允许,上课睡觉.玩手机(吃鸡.王者荣耀...) 6).做好复习和预习(我只会给你们大纲,没有现成笔记)工作 7).保持初心,代码虐我千百遍,我视代码如初恋!! 2.硬件和软件: 硬件:"看得…