python之cookbook-day03】的更多相关文章

s12-20160116-day03 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* BLOCKS =============================================================================*/ p, blockquote, ul, ol, dl, table, pre { margin…
本节内容 1.函数基本语法及特性 2.参数 3.局部变量与全局变量 4.返回值 嵌套函数 5.递归 6.匿名函数 7.高阶函数 8.内置函数 一.函数基本语法及特性 区别 面向过程编程:根据业务逻辑从上到下实现功能,其往往用一长段代码来实现指定功能,开发过程中最常见的操作就是粘贴复制,也就是将之前实现的代码块复制到现需功能处. 函数式编程:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可. 面向对象编程:对函数进行分类和封装,让开发"更快更好更强..." 特性 1.减少重复…
我在前面的文章提到了变量的概念,这里详细介绍下变量的命名.变量名,只能是字母.数字及下划线 "_" 任意组成,而且不能以数字开头.在命名变量时,尽量避免与系统关键词重名,如:'and','as','class','else'等等,这些关键词命名时,系统会直接报错,还有一些关键词使用时虽然不会报错,但是这些词的功能就会被自定义的功能给屏蔽掉,尽量避免这些行为.而以_开头的变量大多都有其特殊含义,尽量以字母开头命名.在命名时可以出现my_name ,MyName,myName这些方式,尽量…
本节内容 深浅拷贝 循环方式 字典常用方法总结 一.深浅拷贝 列表.元组.字典(以及其他) 对于列表.元组和字典而言,进行赋值(=).浅拷贝(copy).深拷贝(deepcopy)而言,其内存地址是变化不通的. 赋值(=) 赋值只是创建一个变量,该变量指向原来的内存地址 1 2 3 4 5 >>> name1 = ['a','b',['m','n'],'c'] >>> name2 = name1 #输出结果,两个内存地址是一样的 >>> print(i…
本节内容 1.作用域 2.三元运算 3.进制 一.作用域 对于变量的作用域,执行声明并在内存中存在,该变量就可以在下面的代码中使用. 1 2 3 if 1==1:     name = 'wupeiqi' print  name 下面的结论对吗? 外层变量,可以被内层变量使用 内层变量,无法被外层变量使用 二.三元运算 1 result = 值1 if 条件 else 值2 如果条件为真:result = 值1如果条件为假:result = 值2 三.进制 二进制,01 八进制,01234567…
零.本节内容 1.文件常用操作汇总 2.打开文件 3.操作文件 4.关闭文件 一.文件常用操作汇总 二.打开文件 1.普通打开模式 r,英文:read,只读模式(默认) w,英文:write,只写模式(不可读,不存在则创建新文件,存在则删除内容) a,英文:append,追加模式(不可读,不存在则创建,存在则只追加内容 2.同时读写模式 r+,可读写文件(可读:可写:可追加,不存在文件则报错) w+,可写读文件(可读,可写,创建新文件) a+,可追加和读文件(可读,可追加,不存在则创建) 3.二…
本节内容 1.编码介绍 2.字符编码介绍 3.总结 说到python的编码,一句话总结,说多了都是泪啊,这个在以后的python的开发中绝对是一件令人头疼的事情.所以有必要要讲讲清楚 一.编码介绍 1.须知: 在python 2中默认编码是 ASCII,而在python 3中默认编码是 unicode unicode 分为utf-32 (占4个字节),utf-16(占两个字节),utf-8(占1-4个字节),所以utf-16 是最常用的unicode版本,但是在文件里存的还是utf-8,因为ut…
本节内容 简述 语法 字典的使用 字典内置方法 一.简述 字典是Python中的又一种数据结构,它是通过key-value的数据类型,跟我们小时候用的新华字典差不多,通过key去访问value 二.语法 stu_info = { "xiedi":28, "liuhailin":27, "daiqiao":30, "hanwenhai":25, "chenqun":38 } 2.特性 ①字典是无序的 ②字典是…
一.概述 我们工作中需要经常操作文件,下面就讲讲如何用Python操作文件 1.文件操作的流程: 打开文件,得到文件句柄赋值给一个变量 通过文件句柄,对文件进行操作 关闭文件 二.入门 1.语法 open(文件路径,模式,字符编码) 1 2 3 4 5 6 7 8 #获取文件句柄 f = open("yesterday","r",encoding="utf-8") #读取数据 data = f.read() #打印读取的文件 print(data…
1  复习计算机基础 计算机基础我们讲到完整的计算机系统包括了:应用程序,操作系统,硬件三部分.那么硬件又分为:cpu,内,和硬盘. 对于用户来说我们操作计算机是通过应用程序来间接控制计算机.当我们打开应用程序,比如我们打开一个word,那么我们打开它是想进行文件编辑或者将硬盘中的文件通过显示屏 显示给我们看. 应用程序运行:当你打开word应用程序,想要显示硬盘中的word文档,应用程序首先会向操作系统发出请求,操作系统会发一个指令给cpu让cpu到硬盘中去把所需word文档读取到 内存中,然…
1.读写压缩数据文件 使用 gzip 和 bz2 模块来读写压缩文件,不过需要注意文件的模式,默认格式为二进制. # 读取压缩文件 import gzip with gzip.open('somefile.gz', 'rt') as f: text = f.read() import bz2 with bz2.open('somefile.bz2', 'rt') as f: text = f.read() # 写入压缩数据 import gzip with gzip.open('somefile…
1.随机选择 python中生成随机数使用random模块. 1.从序列中随机挑选元素,使用random.choice() >>> import random >>> values = [1, 2, 3, 4, 5, 6] >>> random.choice(values) 3 >>> random.choice(values) 3 >>> random.choice(values) 1 >>> r…
一.啥是数据类型 ​ 我们人类可以很容易的分清数字与字符的区别,但是计算机并不能呀,计算机虽然很强大,但从某种角度上看又很傻,除非你明确的告诉它,1是数字,"汉"是文字,否则它是分不清1和'汉'的区别的,因此,在每个编程语言里都会有一个叫数据类型的东东,其实就是对常用的各种数据类型进行了明确的划分,你想让计算机进行数值运算,你就传数字给它,你想让他处理文字,就传字符串类型给他.Python中常用的数据类型有多种,如下: >>整数型(int) ,字符串(str),布尔值(bo…
一.列表初识 列表是 Python 的基础数据类型之一,它是以''[ ]''的形式括起来的,每个元素用","隔开,属于容器型数据类型,他可以存放大量的.各种类型的数据. 基本格式 li = ['Dylan', 'yaoyao', 1234, True, (1212, '中文'), ['列表', 'qiantao', {'name':'Dylan'}]] 可以看到,列表内可以存放多种数据类型,或以嵌套列表,元组,字典,布尔值等. 列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存…
#!/usr/bin/env python # -*- coding:utf8 -*- # 1.有两个列表 # l1 = [11,22,33] # l2 = [22,33,44] # a.获取内容相同的元素列表 l1 = [11, 22, 33] l2 = [22, 33, 44] for v in l1 : if v in l2 : print(v) # b.获取l1中有,l2中没有的元素列表 print("------------------------------------------&…
目录 python绘图常见bug matplotlib包加载 解决中文绘图乱码解决方法 解决python中用matplotlib画多幅图时出现图形部分重叠的问题 python绘图常见bug matplotlib包加载 import matplotlib.pyplot as plt 解决中文绘图乱码解决方法 bug: 一些变量名是中文的时候,输出图像会导致中文乱码不显示 比如这个demo 插入jupyter notebook的代码(不能显示) 解决办法: 我还理解不了,等我理解了来解释 #如遇中文…
基础数据类型总览 why:机器无法像人一样分编各种类型 int(数字) str(字符串)作用:存储少量信息. '12','我和你','qw' bool值 作用:判断真假 True False list(列表) 作用:存储大量数据,可改变里面的元素. [12,[1,2,3,a],True,'wo'] tuple(元组)作用:存储大量数据,不可改变里面的元素. (12,False,'wo',[1,2,3]) dict(字典)作用:存储大量关联型数据,查询速度快.{'name':'山就在这儿','ag…
cd指令说明 1).作用:切换工作目录. 2).   命令(注意空格)         含义 cd ~===cd             回到家目录 cd .                        保持当前目录 cd ..                       返回上一层目录 cd -                        在最近两个工作目录之间来回切换 相对路径和绝对路径 相对路径:在输入路径时,最前面不是"/"或"-",表示相对当前目录所在…
本节内容 1.关系测试(特殊符号) 1.交集2.并集3.差集4.对称差集5.是否是子集6.是否是父集 2.基本操作 1.add2.update3.remove VS pop vs discard4.len5.x in s6.x not in s 一.关系测试(特殊符号) 1.交集(&) >>> name_1 = [1,2,3,4,7,8,7,10] >>> name_2 = [1,3,5,8,10] >>> name_1 = set(name_…
本节内容 1.集合常用方法总结2.定义3.关系测试 集合是无序的,天生不重复的数据组合,它的作用如下: 去重,即:把一个列表变成集合,就去重了 关系测试,即:测试两组集合的交集.并集和差集等 一.集合常用方法总结 二.定义 1.语法 >>> name_1 = [1,2,3,4,7,8,7,10] #把列表转换为集合 >>> name_1 = set(name_1) #转换后,去重 >>> print(name_1,type(name_1)) {1, 2…
1.减少可调用对象的参数个数,使用functools.partial冻结参数 使用functools.partial(),可以固定一个或者多个值,减少调用参数. >>> def spam(a, b, c, d): ... print(a, b, c, d) ... >>> from functools import partial >>> s1 = partial(spam, 1) # 把a 的值设为 1 >>> s1(2, 3, 4…
1.函数的默认参数必须不可变 如果函数的默认参数为可变的对象,那么默认参数在函数外被修改也会影响到函数本身的. >>> def spam(a, b=None): # b要为不可变参数,不能使用空列表 [] 等可变参数 ... if b is None: ... b = [] ... 2.匿名函数 1.想不出函数名时,或想要一种短小的操作,可以使用匿名函数 >>> sum = lambda x, y: x + y >>> sum(2, 3) 5 >…
1.同时迭代多个序列(zip(函数)) 使用zip()函数可以同时迭代多个序列. >>> X = [1, 2, 3, 4, 5, 6] >>> Y = [121, 223, 116, 666, 919, 2333] >>> for x, y in zip(X, Y): ... print(x, y) ... 1 121 2 223 3 116 4 666 5 919 6 2333 zip(a, b)的作用是创建一个迭代器,产生元组(x, y),x取自a…
1.数字的四舍五入 对于简单的舍入运算,使用内置的 round(value, ndigits) 函数即可. round 函数返回离它最近的偶数.也就是说,对 1.5 或者 2.5 的舍入运算都会得到 2. >>> round(2.5) 2 >>> round(1.5) 2 round()的参数ndigits可以是负数,取整到十位,百位,千位, 效果如下: >>> a = 13123213 >>> round(a, -1) 131232…
1.双向队列 collections.deque 类(双向队列)是一个线程安全.可以快速从两端添加或者删除元素的数据类型. rotate和popleft操作,rorate可以把前后元素换位.popleft可以从左边删除元素,extendleft可以从左边添加元素. >>> from collections import deque # 导入deque模块 >>> dq = deque(range(10), maxlen=10) # deque可以有maxlen参数,限制…
1.元组拆包和解压序列赋值 任何的序列 (或者是可迭代对象) 可以通过一个简单的赋值语句解压并赋值给多个 变量.唯一的前提就是变量的数量必须跟序列元素的数量是一样的. 1.平行赋值: >>> x = (1, 2) >>> a, b = x # 元组拆包 >>> a 1 >>> b 2 2.以用 * 运算符把一个可迭代对象拆开作为函数的参数: >>> divmod(20, 8) # 20求8的余,2 * 8 + 4 =…
1.数据结构 1.1 内置序列类型 四种序列类型: 1.容器序列:list.tuple和collections.deque 2.扁平序列:str.bytes.bytearray.memoryview和array.array 3.可变序列:list.bytearray.array.array.collections.deque 和 memoryview 4.不可变序列:tuple.str 和 bytes 1.2 列表推导 1.列表推导(list comprehension):列表推导是构建列表(l…
1.文件操作 (1)打开文件 f = open ("文件名称",mode='' ",encoding="utf-8") mode=操作方式 encoding文件操作编码方式 绝对路径:根目录“C:/a/a.txt” 相对路径:相对于当前程序的所在文件夹. ../上一层文件夹 ./当前文件夹 文件夹/  进入文件夹 (2)读取文件 f.readline()     读取一行 f.readline().strip()       去空白 f.readlines…
###一.有变量name = 'aleX leNb',完成如下的操作 name = 'aleX leNb' name1 = ' aleX leNb ' #1.移除name1 变量对应的值两边的空格 ,输出结果 print(name1.strip()); #2.移除name 中'al' ,输出结果 print(name[2:]); #3.移除name 中 'Nb' ,输出结果 print(name[:-2]) #4.移除name 开头的'a' 结尾的'b' ,输出结果 print(name[1:-…
Python基础[day01]:python介绍发展史(一) Python基础[day01]:Hello World程序(二) Python基础[day01]:表达式if ...else语句(三) Python基础[day01]:python 2和3区别(四) Python基础[day01]:初始模块(五) Python基础[day01]:PyChram使用技巧总结(五) Python基础[day01]:PyChram使用技巧总结(六) Python基础[day02]:字符编码(一) Pytho…