Python基础 第6章 抽象】的更多相关文章

1. 引言及抽象和结构 生成斐波那契数列的代码如下: fibs = [0, 1] num = int(input('How many num you want:')) for x in range(num-2): fibs.append(fibs[-2] + fibs[-1]) print(fibs) 结果: How many num you want:8 [0, 1, 1, 2, 3, 5, 8, 13] (1)让程序更抽象,可以让人更容易理解. (2)函数,是结构化编程的核心. 2. 自定义…
字符串的方法非常之多,重点学习一些最有用的,完整的字符串方法参见<Python基础教程(第三版)>附录B. 模块string,虽然风头已小,但其包含了一些字符串方法中没有的常量和函数,故将模块string中几个非常有用的常量列出: string.digits: 包含数字0-9的字符串: string.ascii_letters: 包含所有ASCII字母(大写和小写)的字符串: string.ascii_lowercase: 包含所有小写ASCII字母的字符串: string.printable…
从2019年3月底开始学习Python,4月份开始在CSDN发博客,至今不到半年,老猿认为博客内容中关于Python基础知识的内容已经基本告一段落,本章进入Python基础知识结束章节,对Python基础知识进行收尾,主要对老猿认为基础知识部分尚未说明的内容在本章进行一个简介,包括异常.闭包.tkinter图形界面.使用pip进行模块安装与卸载.不过这些内容,老猿只是简介,具体内容大家可以在网上找到资源学习,老猿没准备花很大精力来详细编写文章,因为后面需要进入一个新阶段去学更多有实际意义的内容.…
1. 1 多态 多态,即便不知道变量指向的是哪种对象,也能对其执行操作,且操作的行为将随对象所属的类型(类)而异. 1.2 多态与方法 当无需知道对象是什么样的就能对其执行操作时,都是多态在起作用. # 使用random模块种的choice函数,随机从序列中选择一个元素 from random import choice x = choice(['Hello world!', [1, 2, 'e', 'e', 4]]) print(x.count('e')) 结果:1 1.3 封装 封装是指,向…
本章将引入一个新的概念,:数据结构.数据结构是通过某种方式(例如对元素进行编号)组织在 一起的数据元素的集合,这些数据元素可以是数字或者字符,甚至可以是其他数据结构.在python中,最基本的数据结构是序列(sequence).序列中的每个元素被分配一个序号--即元素的位置,也称为索引.第一个索引是0,第二个则是1,依次类推. 2.1 序列概览 python包含6中内建的序列,本章重点讨论最常用的两种:列表和元组.其他的内建序列类型字符串.Unicode字符串.buffer对象和xrange对象…
1.1变量 变量基本上就是代表(或者引用)某个值的名字,举例来说,如果希望用x代表3,只需要执行下面的语句即可: >>>x = 3 这样的操作称为赋值(assignment),值3赋给了变量x.另一个说法就是:将变量x绑定到了值3上面,在变量被赋值以后,就可以在表达式中使用变量: >>>x*2 >>>6 1.2语句 语句和表达式之间有什么区别呢?表达式是某事,而语句是做某事(换句话说就是告诉计算机做什么).比如2*2是4,而print(2*2)打印4.…
1. clear 方法clear删除所有的字典项,就地执行,什么都不返回(或者说返回None) d = {} d['name'] = 'Gumby' d['age'] = 42 print(d) return_value = d.clear() print(d) print(return_value) 结果: {'name': 'Gumby', 'age': 42} {} None 2. copy 方法copy返回一个新字典,其包含的键-值对与原来的字典相同(该方法属于浅复制,因为值本身是原件,…
1 函数与模块 编程大师Martin Fowler先生曾经说过:"代码有很多种坏味道,重复是最坏的一种!" 函数 为了减少代码中重复出现的冗余代码,通常我们选择创建函数来供代码重复调用. 使用 def 关键字来定义函数,函数与变量一样也需有固定名称,执行完毕后通过 return 关键字来返回一个值,函数的参数可通过(*kwds)与(**kwds)指定. 模块 当退出python编译器时,所有的函数与变量将丢失,为了支持这一点,Python有一种方法可以将函数定义放在一个文件中,并在脚本…
6. 简单推导 列表推导,是一种从其他列表创建列表的方式,其原理类似于for循环. list1 = [x * x for x in range(10)] print(list1) 结果: [0, 1, 4, 9, 16, 25, 36, 49, 64, 81] list2 = [x * x for x in range(10) if x % 3 == 0] print(list2) 结果: [0, 9, 36, 81] list3 = [(x,y) for x in range(3) for y…
通过名称来访问其各个值的数据结构,映射(mapping). 字典,是Python中唯一的内置映射类型,其中的值不按顺序排列,而是存储在键下.(键,可能是数.字符串.元组). 1.1 字典由 键 及其相应的值组成,这种 键-值 对 成为项.键与值,用(:)分隔:项 之间用逗号分隔:整个字典放在花括号{}内. 1.2 字典(以及其他映射类型)中,键 必须是独一无二的,而字典的 值 无需如此. 2.1 函数dict 函数dict,用于从其他映射(如其他字典)或键-值对序列创建字典 items = [(…
__getitem__和__setitem__: 这个方法返回与指定键想关联的值.对序列来说,键应该是0~n-1的整数,其中n为序列的长度.对映射来说,键可以是任何类型. class A : __getitem__: print(x) 实例化 a = A(),则a[y]就会调用这个方法 def checkIndex(key): """ 所给的键是能接受索引吗? 为了能被接受,键应该是一个非负的整数.如果她不是一个整数,会引发TypeError; 如果他是负数,则会引发Inde…
1. print和import 1.1 打印多个参数 可用 + 连接多个字符串,可保证被连接字符串前无空格: 可用sep=“_”,自定义各种分隔符: print("I","wish","to","register","a","complaint",sep="_") 结果: I_wish_to_register_a_complaint 可自定义结束字符串,以替换默认的换…
所有标准序列操作(索引,切片,乘法,成员资格检查,长度,最小值,最大值)都适于字符串. 但,字符串是不可变得,故所有得元素赋值和切片赋值都是非法的. 1. %s 转换说明符 设置字符串格式 %左边指定一个字符串,右边指定要设置其格式的值(可使用单个值[如字符串或数字],可使用元组[设置多个值得格式],还可使用字典) formats = "Hello, %s! %s enough for you?" value = ('world', 'Hot') final_format = form…
开始学习python,根据Python基础教程,把里面相关的基础章节写成对应的.py文件 下面是github上的链接 python基础第1章基础 python基础第2章序列和元组 python基础第3章使用字符串 python基础第4章字典 python基础第5章循环 python基础第6章函数和魔法参数 python基础第7章类 python基础第8章异常 python基础第9章魔法方法.属性和迭代器 python基础第11章文件 python基础第12章GUI(wxPython) pytho…
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python部分代码样例 老猿Python重难点知识博文汇总 老猿Python博客地址 第1章 Python学习环境构建目录 第2章 Python编程基础知识目录 第3章 Python的数据类型目录 第4章 基础知识进阶目录 第5章函数进阶目录 第6章 Python中的动态可执行方法目录 第7章 Python类型.类.协议目录 第8章 Python类中常用的特殊变量和方法目录 第9章 Python文件操作目录 第10章…
Python基础(三) 本章内容 集合的概念与操作 文件的操作 函数的特点与用法 参数与局部变量 return返回值的概念 递归的基本含义 函数式编程介绍 高阶函数的概念 一.集合的概念与操作 集合(set):把不同的元素组成一起形成集合,是python基本的数据类型. 集合元素(set elements):组成集合的成员 >>> li=['a','b','c','a'] >>> se =set(li) >>> se set(['a', 'c', 'b…
Python基础(二) 本章内容 数据类型 数据运算 列表与元组的基本操作 字典的基本操作 字符编码与转码 模块初探 练习:购物车程序 一.数据类型 Python有五个标准的数据类型: Numbers(数字) String(字符串) List(列表) Tuple(元组) Dictionary(字典) 1. Number(数字) number类型用来专门存储数字数据,他们是不可改变的数据类型,这意味着改变数字数据类型会分配一个新的对象 Python支持四种不同的数字类型: int(有符号整型) l…
2016/1/27学习内容 第一章 Python基础 Python内置函数 见Python内置函数.md del命令 显式删除操作,列表中也可以使用. 基本输入输出 input() 读入进来永远是字符串 print 文件重定向 fp=open(r'D:\mytest.txt','a+') print(type(fp),file=fp); fp.close(); 输出不换行 for i in range(10): print(i,end=' '); 0 1 2 3 4 5 6 7 8 9 for…
0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": "电脑","price":"1999"}, {"name": "鼠标", "price": "10"}, {"name": "游艇", &q…
"""第二章:python基础,数据类型2.1 变量及身份运算补充2.2 二进制数2.3 字符编码每8位所占的空间位一个比特,这是计算机中最小的表示单位.每8个比特组成一个字符.这是计算机中最小的存储单位.每8个字符又组成一个字节,8bit=1bytes 缩写为1BGBK 和GB2312中文和数字的对应表,一个汉字对应两个字节UTF-8 现代计算机系统通用的字符编码工作方式: 用记事本编辑的时候,从文件读取的UTF-8字符被转换为Unicode字符到内存里,编辑完成之后,保存…
前言:<Data Wrangling with Python>这本书主要是讲使用Pyhon来处理各种类型保存的数据的. 第一章:Python简介 1.版本选择 本书选择的Python版本是2.7,并非最新的Python3,原文的说法是:想保证你能够找到容易阅读且容易获取的资源,并确保你的操作系统及服务支持你使用的Python版本. 这个说法也是比较容易接受的,毕竟Python3刚出没多久,网上大部分公开的资源还是基于Python2的.但即使如此,我个人觉得还是要关注一下3与2的差别,与时俱进嘛…
<python基础教程(第二版)>学习笔记 文件和素材(第11章) 打开文件:open(filename[,mode[,buffering]]) mode是读写文件的模式f=open(r'c:\somefile.txt') #默认是读模式+ 表示是可以读写:r 读模式:w 写模式:a 追加模式:b 二进制模式:换行符在Windows为\r\n,在Unix中为\n, Python会自动转换: buffering缓冲:0表示无缓冲:1表示有缓冲(使用flush或close才会写到硬盘中): sys…
<python基础教程(第二版)>学习笔记 类和对象(第7章) 定义类class Person:    def setName(self,name):        self.name=name    def getName(self):        return self.name foo=Person()foo.setName('AAA')foo.getName()foo.namefoo.name='BBB' 私有属性,名字前面加上两个下划线.class Person:    def _…
<python基础教程(第二版)>学习笔记 函数(第6章) 创建函数:def function_name(params):  block  return values 记录函数:def function_name(params):  'NOTE' #注释  block  return values function_name.__doc__help(function_name) return # 没有返回值 位置参数和关键字参数:关键字参数要提供参数的名字:def function_name(…
<python基础教程(第二版)>学习笔记 语句/循环/条件(第5章) print 'AB', 123 ==> AB 123 # 插入了一个空格print 'AB', 'CD' ==> AB CD # 插入了一个空格print 1,2,3 ==> 1 2 3print (1,2,3) ==> (1, 2, 3)#在脚本中以下ABCD连在一起输出print 'AB',print 'CD' import somemodule #导入模块from somemodule imp…
<python基础教程(第二版)>学习笔记 字典(第4章)创建字典:d={'key1':'value1','key2':'value2'}lst=[('key1','value1'),('key2','value2')]; d=dict(lst)d=dict(key1='value1', key2='value2')字典基本操作:d={'key1':'value1','key2':'value2'}; len(d) ==> 2 #字典中的键值对数量d={'key1':'value1','…
<python基础教程(第二版)>学习笔记 字符串(第3章)所有的基本的序列操作(索引,分片,乘法,判断成员资格,求长度,求最大最小值)对字符串也适用.字符串是不可以改变的:格式化输出字符串:使用%,%左侧是格式字符串,%右侧是需要格式化的值例如:print '%s=%d' % ('x',100) ==> x=100使用%% 格式字符串可以输出 %模板字符串:from string import Templates=Template('$x is 100');  s.substitute…
<python基础教程(第二版)>学习笔记 列表/元组(第2章)序列中的下标从0开始x='ABC' ==> x[0]='A', x[1]='B', x[2]='C'负数索引从右边开始.最后一个元素下标是-1:x[-1]='C''ABC'[0]  ==>  'A'raw_input("x:")[3] 输入数据当作字符串列表分片:x[2:5], x[-3:-1], x[-3:], x[:3], x[:]  #列表名字[起始下标:结束下标]列表分片+步长: x[0:1…
<python基础教程(第二版)>学习笔记 基础部分(第1章)python常用的IDE:Windows: IDLE(gui), Eclipse+PyDev; Python(command line);Linux/Unix: python 1/2=0 # 整除结果为0from __future__ import division # 可以执行普通的除法python -Qnew # 可以执行普通的除法 //整除, 例如: 1//2=0:%取余数:**乘幂长整型数: 末尾带L,例如: 10000L十…
一.Python的简介 1.Python的由来与版本 1.1 python的由来 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承. 1.2  python版本 目前Python的主要版本为Python2.7与Python3.6 . Python2版本到2020年就不再维护. 2.Python是什么样的语言 编程语言主要从以下几个角度为…