02 2019 档案

摘要:设计Car类,初始化属性speed,提供一个run函数 import time class Car: def __init__(self,speed): self.speed=speed #将Road对象传给run函数,绑定微弱的关联关系 def run(self,road): #得到road的长度 阅读全文
posted @ 2019-02-28 23:30 hank-li 阅读(184) 评论(0) 推荐(0) 编辑
摘要:1.设计类class 车: #属性 颜色 = red 品牌 = "BMW" 车牌 = "沪A88888" #函数 行驶(): 停止(): 2.实例化车对象 car = 车() 3.调用对象的属性或者函数完成需求 print(car.颜色,car.品牌) car.行驶() #1.设计类 class C 阅读全文
posted @ 2019-02-28 23:26 hank-li 阅读(195) 评论(0) 推荐(0) 编辑
摘要:1.面向对象:(思想)面向:看、关注、瞅对象:个体、实体、实例、结果单词:object在python中一些皆对象面向过程:(思想)面向:看、关注、瞅过程:经过、经历、从头到尾使用一些生活中的案例来对面向过程和面向对象进行区分比较:案例一:使用面向过程的思想解决吃饭的问题?1.考虑今天吃什么?2.去菜 阅读全文
posted @ 2019-02-28 23:22 hank-li 阅读(260) 评论(0) 推荐(0) 编辑
摘要:3.模块(m)概念:在python中.py结尾的文件,我们就称为模块,可以将类、函数、属性...等内容定义在模块中分类:1).标准库模块:安装完python环境就有的模块,这些模块都是最常用的模块;例如:random、os、os.path、math、...2).第三方模块:别人写的有价值的代码(面向 阅读全文
posted @ 2019-02-28 23:21 hank-li 阅读(178) 评论(0) 推荐(0) 编辑
摘要:满足前提:1).必须是一个可迭代对象2).可以被next()所作用的举例:generator...高效的检测一个对象是否是迭代器对象需要使用collections模块中的Iterator类配合isinstance()内置函数来判断步骤如下:第一步:导入collections模块第二步:collect 阅读全文
posted @ 2019-02-28 23:13 hank-li 阅读(206) 评论(0) 推荐(0) 编辑
摘要:1.可迭代对象:满足前提:只要能被循环操作的对象,就可以可迭代对象举例:str、list、tuple、set、dict、range、generator...高效的检测一个对象是否是可迭代对象需要使用collections模块中的Iterable类配合isinstance()内置函数来判断步骤如下:第 阅读全文
posted @ 2019-02-28 23:04 hank-li 阅读(177) 评论(0) 推荐(0) 编辑
摘要:1.生成器:什么是生成器?它内部封装了一套公式/算法,只有等到需要调用/执行数据时 --> next()函数执行才会将公式计算得到数据结果,这就是生成器的原理(核心思想);【注意事项】:1).生成器中是没有真实数据存在,所以我们是不能直接使用len()函数来尝试得到其长度如果我们这么做了,会报错:S 阅读全文
posted @ 2019-02-28 22:58 hank-li 阅读(442) 评论(0) 推荐(0) 编辑
摘要:匿名函数配合容器函数的使用(了解)1.匿名函数配合列表对象使用 lt=[lambda x:x**2,lambda x:x**3,lambda x:x**4] for i in lt: print(i(2)) print(lt[2](3)) 2.匿名函数配合字典对象使用 key='B' dic1={ 阅读全文
posted @ 2019-02-28 22:22 hank-li 阅读(129) 评论(0) 推荐(0) 编辑
摘要:演示匿名函数的定义和使用 # 定义无参有返回值的有名函数: def func(): return True # 定义无参有返回值的匿名函数 f=lambda : True # 调用有名函数执行 print(func()) # 调用匿名函数执行 print(f()) # 定义无参无返回值的有名函数: 阅读全文
posted @ 2019-02-28 22:13 hank-li 阅读(1009) 评论(0) 推荐(0) 编辑
摘要:队列:满足特点 --> 先进先出,类似于我们生活中的买票、安检【注意】对于队列而言:python中有为其封装特定的函数,在collections模块中的deque函数就可以获取一个队列对象;操作步骤:步骤一:导入collections模块步骤二:collections.deque() --> 返回队 阅读全文
posted @ 2019-02-28 21:33 hank-li 阅读(179) 评论(0) 推荐(0) 编辑
摘要:栈:满足特点 --> 先进后出,类似于我们生活中的子弹夹【注意】对于栈结构而言:python中没有为其封装特定的函数,我们可以使用list(列表)来模拟栈的特点使用list对象来模拟栈结构存取数据的特点:先进后出 # 定义一个列表对象,stack(变量名、引用名) stack=[] # 向栈中添加数 阅读全文
posted @ 2019-02-28 20:54 hank-li 阅读(162) 评论(0) 推荐(0) 编辑
摘要:在Python3中使用以下代码报错: 错误代码如下: 解决: 阅读全文
posted @ 2019-02-27 18:27 hank-li 阅读(525) 评论(0) 推荐(0) 编辑
摘要:问题: 解决: 阅读全文
posted @ 2019-02-27 18:20 hank-li 阅读(231) 评论(0) 推荐(0) 编辑
摘要:演示递归的弊端: def mySum(num): if num == 1: return 1 return num+mySum(num-1) mySum(998) 【注意】:递归可以解决绝大多数循环能干的事情,但是使用递归非常占用系统资源(只有进行没有出栈),所以使用递归需要谨慎. 阅读全文
posted @ 2019-02-27 06:44 hank-li 阅读(214) 评论(0) 推荐(0) 编辑
摘要:需求:遍历某个路径下面的所有内容(文件和目录,多层级的) import os #自定义函数(递归函数):遍历目录层级(多级) def printDirs(path): dirs=os.listdir(path) #循环处理列表 for d in dirs: #组装d得到其绝对路径 fileAbsPa 阅读全文
posted @ 2019-02-27 06:40 hank-li 阅读(139) 评论(0) 推荐(0) 编辑
摘要:演示:简单递归函数的定义和使用需求:1~5进行累加找寻关系:函数名:mySum(num) 1).找临界点:运算到1(加到1)就结束了 2). 第一次:5+mySum(5-1)-->return 5+10 第二次:4+mySum(4-1)-->return 4+6 10 第三次:3+mySum(3-1 阅读全文
posted @ 2019-02-27 06:37 hank-li 阅读(293) 评论(0) 推荐(0) 编辑
摘要:演示with...as...操作 path=r'kaifanglist1.txt' with open(path,'r',encoding='utf-8') as fr: print(fr.read()) 注意事项:1).将可能出现异常的代码定义到try语句中(try可以认为是扫描器),但是它是不具 阅读全文
posted @ 2019-02-27 06:29 hank-li 阅读(423) 评论(0) 推荐(0) 编辑
摘要:演示异常对象传递的过程(往上“抛”),并将其解决 def func1(): print('func1...') print(10/0) def func2(): print('func2...') try: func1() except Exception as e: print(e) def fu 阅读全文
posted @ 2019-02-27 06:22 hank-li 阅读(145) 评论(0) 推荐(0) 编辑
摘要:演示: 1.手动抛出异常对象-->raise关键字 2.try-except代码不能解决语法错误 try: print('try...') raise TypeError('类型有误的异常') except TypeError as e: print(e) else: print('else...' 阅读全文
posted @ 2019-02-27 06:18 hank-li 阅读(255) 评论(0) 推荐(0) 编辑
摘要:演示else语句和异常处理机制结合使用 try: print('try...') print(10/0) except: print('except...') else: print('else...') finally: print('finally...') 阅读全文
posted @ 2019-02-27 06:15 hank-li 阅读(205) 评论(0) 推荐(0) 编辑
摘要:演示:finally语句的作用 try: fr="" path=r'kaifanglist1.txt' fr=open(path,encoding='utf-8') print(fr.read()) except: print('处理啦,处理啦') finally: print('我是finally 阅读全文
posted @ 2019-02-27 06:13 hank-li 阅读(272) 评论(0) 推荐(0) 编辑
摘要:演示: 1).异常处理的定义格式; 2).常见的运行时异常类型; try: print(10/0) num=int('132a') except Exception as e: print('出错了...代码解决了') except: print('我是Exception的简化版...') exce 阅读全文
posted @ 2019-02-27 06:09 hank-li 阅读(173) 评论(0) 推荐(0) 编辑
摘要:自定义函数:实现文件复制操作有形参(2个) 没有返回值相似版(不用) def copyFile(src,dest): #1.打开两个文件:1个关联读操作,1个关联写操作 fr=open(src,'rb') fw=open(dest,'wb') #读和写操作 content=fr.read() fw. 阅读全文
posted @ 2019-02-27 06:05 hank-li 阅读(215) 评论(0) 推荐(0) 编辑
摘要:演示写数据的操作:结论:往文件中写入数据,如果文件不存在,先创建文件,再写入内容 #1.打开文件 fw=open(r'd.txt','w',encoding='utf-8') #2.写数据操作 fw.write('李白威武霸气\n') #以下操作出现了覆盖的情况 fw.write('hank is 阅读全文
posted @ 2019-02-27 06:01 hank-li 阅读(173) 评论(0) 推荐(0) 编辑
摘要:演示readline()和readlines()的使用: #1.打开文件 f3=open(r'a.txt','r',encoding='gbk') #2.读取数据 content3=f3.readline() print(content3) lines_list=f3.readlines() print(lines_list) #3.关闭文件 f3.close() 阅读全文
posted @ 2019-02-27 05:59 hank-li 阅读(562) 评论(0) 推荐(0) 编辑
摘要:演示:读取中文字符结论: 1).如果不设置encoding,默认使用gbk进行编解码 2).如果编码和解码不一致,最终导致报错,但是一旦设置了errors='ingore',那么就不会报错,而采取乱码现象显示 3).tell():返回的是文件描述符的字节位 4).对于读操作,必须保证路径中的文件一定 阅读全文
posted @ 2019-02-27 05:55 hank-li 阅读(558) 评论(0) 推荐(0) 编辑
摘要:演示读取数据操作:path=r'a.txt'1.打开文件f1=open(path,'r')2.读取数据content1=f1.read(3)print(content1)content1=f1.read(6)print(content1)content1=f1.read()print(content 阅读全文
posted @ 2019-02-26 21:09 hank-li 阅读(159) 评论(0) 推荐(0) 编辑
摘要:2.内存和硬盘:内存:计算机硬件组成部分之一,它是一个容器,用来存储数据;处理数据速度快,存储数据量小;断电死机数据会丢失,短暂性存储数据硬盘:计算机硬件组成部分之一,它是一个容器,用来存储数据;处理数据速度慢,存储数据量大,断电死机数据不会丢失,数据的持久存储3.字节和字符字节:计算机的存储数据的 阅读全文
posted @ 2019-02-26 21:05 hank-li 阅读(176) 评论(0) 推荐(0) 编辑
摘要:演示os模块中常用的属性和函数:1.os模块:作用:管理文件和目录属性:os.name:返回系统类型 常用的windows系统 --> ntos.environ:返回当前系统所有的环境变量os.environ.get(ver):返回ver环境变量的内容 import os print(os.name 阅读全文
posted @ 2019-02-26 21:00 hank-li 阅读(328) 评论(0) 推荐(0) 编辑
摘要:装饰器是闭包的一种使用场景;python中的装饰器在定义上需要传入一个函数对象,在此函数执行之前或者之后都可以追加其它的操作,这样做的好处是,在不改变源码(原本业务逻辑的)同时,进行功能的扩展;它在python中一般被使用在,性能测试,插入日志,事务管理,权限校验...它就好比是一个切面(可插拔的) 阅读全文
posted @ 2019-02-26 18:55 hank-li 阅读(144) 评论(0) 推荐(0) 编辑
摘要:满足闭包的三个条件:1).有外部函数和内部函数这样的结构2).外部函数中定义的变量被内部函数所使用3).内部函数对象作为返回值被外部函数返回演示闭包的定义和使用: def outer(): a=10 def inner(): print(a+10) return inner i=outer() i( 阅读全文
posted @ 2019-02-26 00:07 hank-li 阅读(126) 评论(0) 推荐(0) 编辑
摘要:集合中常用的一些函数:1、add(obj):追加一个obj元素到集合中pop():从集合中随机弹出一个元素remove(obj):删除集合中和obj匹配的元素clear():清空集合 s1={10,100,3.14,'abcd'} s1.add('haha') print(s1.pop()) s1. 阅读全文
posted @ 2019-02-26 00:04 hank-li 阅读(202) 评论(0) 推荐(0) 编辑
摘要:dic1 = {...}dic2 = {...}dic1.update(dic2)1、update(dict):dic1调用update传入dic2,如果dic2中的内容在dic1中不存在,那么直接加入新的价值对到dic1中;如果dic2中的键在dic1中已经出现了,那么就将dic2中键所对应的值去 阅读全文
posted @ 2019-02-25 23:51 hank-li 阅读(572) 评论(0) 推荐(0) 编辑
摘要:演示list类型中常用的一些函数:1、append(obj):将obj元素追加到列表的末尾 lt=['路费','佐罗','山治','乔巴','乌索普','纳米桑'] #append(): lt.append('香克斯') print(lt,len(lt)) lt.append(['鸣人','佐助', 阅读全文
posted @ 2019-02-25 23:45 hank-li 阅读(317) 评论(0) 推荐(0) 编辑
摘要:演示str中常用的一些函数:1.join():将容器对象以某种特定的格式(字符串)进行拼接组合,最后以字符串的形式返回 lt=['i','love','you','very','much'] str1='-'.join(lt) print(str1,type(str1)) print(str.joi 阅读全文
posted @ 2019-02-25 23:34 hank-li 阅读(862) 评论(0) 推荐(0) 编辑
摘要:属性:e:自然数pi:圆周率函数:ceil():向上取整floor():向下取整sqrt():开平方根radians():角度转弧度degrees():弧度转角度 import math #属性:e和pi print(math.e) print(math.pi) #函数: #ceil(),floot 阅读全文
posted @ 2019-02-25 23:25 hank-li 阅读(555) 评论(0) 推荐(0) 编辑
摘要:1.random():返回一个[0,1)的随机浮点数(双精度浮点数)2.uniform(a,b): 返回[a,b]之间的一个随机浮点数(双精度浮点数)【注意】a和b接受的数据大小随意 例如:3.random.uniform(10,20) random.uniform(20,10)4.randrange(start,end,step):返回[start,end)之间的一个随机整数5.randint(... 阅读全文
posted @ 2019-02-25 23:21 hank-li 阅读(511) 评论(0) 推荐(0) 编辑
摘要:常用内置函数:round(): print(round(3.14),round(3.99)) print(round(3145.926,-2),round(413.575,2)) abs(): print(abs(-2),abs(-1),abs(0),abs(1),abs(2)) max()、min 阅读全文
posted @ 2019-02-25 23:19 hank-li 阅读(635) 评论(0) 推荐(0) 编辑
摘要:1.列表生成式:什么是列表生成式?它就是一串表达式,专门用于生成列表对象,当中包含一系列的业务逻辑;结构:简介、优雅、阅读性好;比传统获取列表对象来的更加的方便;它是语法糖的一种;什么是语法糖?我们在实际开发中,碰到比较复杂的业务逻辑,可能导致代码的书写量就上去,语法糖的出现就是在不破坏复杂业务逻辑 阅读全文
posted @ 2019-02-25 23:05 hank-li 阅读(255) 评论(0) 推荐(0) 编辑
摘要:1.外部函数&内部函数内部函数:定义在某个函数的内部,就是内部函数;【注意事项】:1).内部函数可以随意使用它外部函数中的内容2).外部函数不能使用内部函数中的内容3).内部函数不能直接在外界被调用(与作用域有关)4).内部函数的执行需要依赖于外部函数nonlocal关键字:如果想要在内部函数中修改 阅读全文
posted @ 2019-02-25 20:55 hank-li 阅读(1847) 评论(0) 推荐(0) 编辑
摘要:2.ascii码美国设计出来的一张编码表,将涉及的字符都编号了,底层仍然还是进行二进制的运算;记住:3个范围段1).'0' --> 码值:482).'A' --> 码值:653).'a' --> 码值:97内置函数:1).ord(str):将str转换为码值(整数类型)2).chr(num):将码值 阅读全文
posted @ 2019-02-25 20:51 hank-li 阅读(803) 评论(0) 推荐(0) 编辑
摘要:全局变量&局部变量:全局变量的特点:1).直接定义在.py文件中(函数外)的变量(全局位置)2).作用域比较大,可以被此文件中的任何函数所使用局部变量的特点:1).定义在函数内部(函数体、形参位置)的变量2).作用域比较小,只能被当前这个函数所使用global关键字:如果想要在函数的内部(局部位置) 阅读全文
posted @ 2019-02-25 20:38 hank-li 阅读(186) 评论(0) 推荐(0) 编辑
摘要:演示函数的定义和使用细节:默认参数:#在设计自定义函数的时候,就存在一个默认值,就算在调用的时候不显示的传入实参,也不会报错。#会用默认值来代替参与后期的运算 def m1(name='张三',age=23): print(name,age) m1('李四') m1('王五',18) 一般参数:定义 阅读全文
posted @ 2019-02-25 18:57 hank-li 阅读(152) 评论(0) 推荐(0) 编辑
摘要:整理:4中最常见的自定义函数模型1).无参无返回值2).无参有返回值3).有参无返回值4).有参有返回值 #定义无参无返回值自定义函数 def func1(): print('hello method...') #定义无参有返回值自定义函数 def func2(): return True #定义有 阅读全文
posted @ 2019-02-25 18:54 hank-li 阅读(186) 评论(0) 推荐(0) 编辑
摘要:return关键字的使用:1).结束函数2).将结果返回给函数的调用者/调用处【注意事项】1).与return同一作用范围内的后面不要显示书写任何代码,因为永远不可能被执行到,不会报错。2).return后面也可以不定义任何有效的数据,但是这样会将None值返回给调用处,一般没什么意义。 def func1(a,b): print(a+b) #return后面也可以不定义任何有效... 阅读全文
posted @ 2019-02-25 18:51 hank-li 阅读(177) 评论(0) 推荐(0) 编辑
摘要:案例二:python中定义有/无返回值的函数,演示python没有函数重载这一说需求:自定义函数:计算两个整数的和值两个原则:1).有没形参有,两个2).有没返回值可有可无 def my_sum(a,b): sum=a+b return sum 调用自定义函数来实现两个整数求和的操作 sum=my_ 阅读全文
posted @ 2019-02-25 18:45 hank-li 阅读(225) 评论(0) 推荐(0) 编辑
摘要:案例一:演示自定义函数的使用:包含:1).定义格式的掌握2).函数的好处自定义函数:实现打印矩形的操作两个原则需要考虑:1).有没有形参?有,2个2).有没有返回值?没有。 def printRet(a,b): for i in range(a): for j in range(b): print( 阅读全文
posted @ 2019-02-25 18:36 hank-li 阅读(212) 评论(0) 推荐(0) 编辑
摘要:案例二:冒泡排序 lt1=[45,12,56,-32,-3,44,75,-22,100] print('排序前:'+str(lt1)) 自定义函数:实现冒泡排序(升序)原则:1).有没有形参?有,接受一个列表对象2).有没有返回值?没有,排完就排完 def bubbleSort(lt): lengt 阅读全文
posted @ 2019-02-24 18:12 hank-li 阅读(375) 评论(0) 推荐(0) 编辑
摘要:案例一:选择排序使用选择排序的思想实现列表数据的升序排序 lt=[45,12,56,-32,-3,44,75,-22,100] length=len(lt) # print('排序前:'+str(lt)) 使用嵌套循环来实现外层循环控制轮数,i可以认为是选中空间或者点 for i in range( 阅读全文
posted @ 2019-02-24 18:09 hank-li 阅读(266) 评论(0) 推荐(0) 编辑
摘要:1.排序特点:1).升序:从小到大2).降序:从大到小课堂实现选择排序:参看老郭选择排序.py文件2.函数:(方法/method)自定义函数:概念:它表示一段作用范围(作用域),当中封装了一段业务逻辑代码,此范围有名字,我们需要调用函数名,才能去执行它;好处:1).代码的复用性变强2).代码的扩展性 阅读全文
posted @ 2019-02-24 17:56 hank-li 阅读(597) 评论(0) 推荐(0) 编辑
摘要:2.嵌套循环:概念:循环中再定义循环,称为嵌套循环;【注意】嵌套循环可能有多层,但是一般我们实际开发最多两层就可以搞定了(99%的情况)格式:1).while中套while常用2).while中套forin3).forin中套while4).forin中套forin更常用演示forin...fori 阅读全文
posted @ 2019-02-24 17:52 hank-li 阅读(7317) 评论(0) 推荐(0) 编辑
摘要:1.for...in循环:有两个使用场景:场景一:for in和range对象配合使用range对象的引入讲解格式:range([start,end,step]):特点:索引满足含头不含尾的特点-->闭开区间以上三个参数:start、end、step的含义和str切片一样理解惰性序列对象:将多个数据 阅读全文
posted @ 2019-02-24 17:38 hank-li 阅读(1791) 评论(0) 推荐(0) 编辑
摘要:3.转换函数:int():float():str():list():tuple():set():dict():bool():案例:#演示各个转换函数的使用:数值型-->字符型使用:str() 阅读全文
posted @ 2019-02-24 17:32 hank-li 阅读(227) 评论(0) 推荐(0) 编辑
摘要:2.4.time模块的初体验sleep(sec)函数:程序一旦执行到sleep()函数,会立即休眠sec秒,等到时间到了,自动醒过来,然后继续往下执行...思路步骤:第一步:导入time模块 import time第二步:time模块名调用sleep(sec)执行让程序休眠sec秒 time.sle 阅读全文
posted @ 2019-02-24 17:26 hank-li 阅读(378) 评论(0) 推荐(0) 编辑
摘要:2.3.无限循环/死循环:何时发生无限循环?循环条件永远为True,就出现了无限循环【注意】无限循环是需要避免的,因为它极其占用系统资源;但是配合我们之后讲的break等关键字,就会变得更有意义;格式:while True:代码块: #演示while的无限循环格式: import time whil 阅读全文
posted @ 2019-02-24 17:21 hank-li 阅读(2945) 评论(0) 推荐(0) 编辑
摘要:2.2.如何获取随机整数值?引入random模块的使用randint(a,b)函数:作用:返回给程序一个[a,b]范围内的随机整数注意:含头含尾闭区间思路步骤:第一步:导入random模块到相应的.py文件中 import random第二步:通过random模块名调用randint(a,b)执行得到随机整数 random.randint(1,5)#案例1:#演示random模块中randint函... 阅读全文
posted @ 2019-02-24 17:15 hank-li 阅读(383) 评论(0) 推荐(0) 编辑
摘要:while循环:2.1.有四要素组成:①.初始化条件(执行一次)一个起始数据/起点,一般使用变量来进行存储②.循环条件(可能执行多次)循环合适结束全靠它,执行结果为True,那么循环继续,反之,循环就终止了补充:需要和初始化条件配合③.迭代条件(可能执行多次)用来改变初始化条件中的数据,只有变化了, 阅读全文
posted @ 2019-02-24 17:14 hank-li 阅读(551) 评论(0) 推荐(0) 编辑
摘要:1.判断结构格式三:①if 条件表达式1:语句块1elif 条件表达式2:语句块2elif 条件表达式3:语句块3elif 条件表达式y:语句块yelse:语句块z②执行流程:计算机一定会先执行①,遇到了if关键字执行条件表达式1,如果条件表达式1的结果为True,那么就进入if内部执行语句块1,执行结束后,整个if elif else结构结束了,但是程序一定会执行②如果条件表达式1的结果为Fal... 阅读全文
posted @ 2019-02-24 17:05 hank-li 阅读(610) 评论(0) 推荐(0) 编辑
摘要:流程控制语句:分类:1).顺序结构2).判断结构解析:如果...否则...3).循环结构1.判断结构:格式分类:三种格式格式一:①if 条件表达式:语句块②执行流程:计算机会先执行①,遇到了if关键字会执行条件表达式,如果条件表达式的结果为True,那么就会立即进入到if的内部去执行语句块,等到语句块执行完毕了,就可以认为if结构结束了,但是程序一定会去执行②如果条件表达式的结果为False,那么... 阅读全文
posted @ 2019-02-24 17:01 hank-li 阅读(279) 评论(0) 推荐(0) 编辑
摘要:一、python中的运算符:什么是运算符?就是计算机语言中用来参与运算的符号!!1.算数运算符:符号:+ - * / %(取余,取模) //(取整) **(开方)2.比较运算符:特点:比较运算符的最终结果一定是布尔值(True/False)符号:> >= < <= == !=理解:对于>=和<=的操 阅读全文
posted @ 2019-02-24 16:56 hank-li 阅读(1103) 评论(0) 推荐(0) 编辑
摘要:day03:1.列表:list特点:有序的(有索引、定义和显示顺序是一致的)、可变的(既可以改变元素内容也可以自动扩容)、可重复的、可以存储任何的数据类型数据定义个列表如下: lt = ['宋江','李逵','鲁智深','武松','西门庆','潘金莲','时迁',['刘备','关羽','张飞']] 阅读全文
posted @ 2019-02-24 16:53 hank-li 阅读(248) 评论(0) 推荐(0) 编辑
摘要:day02(上午)主要讲了进制问题,小编之前已经发过了day02(下午):1.数据类型:分类:1).整数型:int浮点型(小数):float布尔型(True/False):bool2).字符串型:str 列表:list元祖:tuple字典:dict集合:set【记住】都是容器类型3).NoneTyp 阅读全文
posted @ 2019-02-24 16:45 hank-li 阅读(273) 评论(0) 推荐(0) 编辑
摘要:6.进制之间的转换(重要)二进制:满二进一 范围:0、1符号:0b例如:0b10...【注意】计算机只能识别二进制数据八进制:满八进一 范围:0~7符号:0o例如:0o66十进制:满十进一 范围:0~9十六进制:满十六进一范围:0~9 A B C D E F符号:0x例如:0x3D二进制和十进制之间 阅读全文
posted @ 2019-02-24 15:23 hank-li 阅读(413) 评论(0) 推荐(0) 编辑
摘要:day01(上午):1.学习方法(建议):1).不要依赖于我的视频,绝对不要晚上将视频全部在过一遍2).上课不要记笔记,而且不要用纸质的笔记本去整理笔记3).不要只看不敲,代码方面我们需要做到:"敲、猛敲、使劲敲、往死里敲..."4).纸上得来终觉浅,绝知此事要躬行5).绝对不允许,上课睡觉、玩手机 阅读全文
posted @ 2019-02-24 15:23 hank-li 阅读(349) 评论(0) 推荐(0) 编辑
摘要:3.子查询(难):当进行查询的时候,发现需要的数据信息不明确,需要先通过另一个查询得到,此查询称为子查询;执行顺序:先执行子查询得到结果以后返回给主查询组成部分:1).主查询部分2).子查询部分【注意事项】:子查询一定需要被定义/包裹在小括号内部,可以认为是显示的提升了代码执行的优先级需求1:查询薪 阅读全文
posted @ 2019-02-24 15:22 hank-li 阅读(641) 评论(0) 推荐(0) 编辑
摘要:1.分组的概念:关键字:group by子句结论:在select列表中如果出现了聚合函数,不是聚合函数的列,必须都要定义到group by子句的后面需求:查询公司各个部门的平均工资?select department_id,avg(salary)from employeesgroup by depa 阅读全文
posted @ 2019-02-24 15:21 hank-li 阅读(202) 评论(0) 推荐(0) 编辑
摘要:多行函数:(聚合函数/分组函数)解释:多条数据进入,单条结果出来(多进单出)1).max(obj):最大值2).min(obj):最小值3).sum(num):求和4).avg(num):求平均值5).count(obj):计数【注意事项】:1).max()和min()两个函数可以接受任何数据类型的 阅读全文
posted @ 2019-02-24 15:20 hank-li 阅读(421) 评论(0) 推荐(0) 编辑
摘要:1.去重:distinct关键字需求:查看公司一共有多少部门? select department_id from employees; //此代码会查出107条记录,存在部门重复的问题! select distinct department_id from employees; 思考:参看如下代码 阅读全文
posted @ 2019-02-24 15:19 hank-li 阅读(742) 评论(0) 推荐(0) 编辑
摘要:day01回顾:数据库:定义:存储数据的仓库(database,简称db)常用的数据库对象有哪些?1).数据表(table) *****2).视图(view)3).索引(index)4).序列(sequence)主流的关系型数据库有哪些?(枚举)oracle、mysql、sqlserver、db2. 阅读全文
posted @ 2019-02-24 15:18 hank-li 阅读(297) 评论(0) 推荐(0) 编辑
摘要:day01:关键字:desc作用:查看表结构(字段名,数据类型&长度)举例:desc python1808_laoguo;追加数据到表中:(新增操作)关键字:insert into格式1:insert into 表名 values(值1,值2,值3...);格式2: insert into 表名(列 阅读全文
posted @ 2019-02-24 15:17 hank-li 阅读(215) 评论(0) 推荐(0) 编辑
摘要:1).python基础语法:4周课程(结束阶段考试)2).前端知识点:html、css、javascript(js)、jQuery3).Linux(系统)、数据库(关系型&非关系型)4).python框架5).爬虫6).数据分析(人工智能)数据库(database:db)定义:存储数据的仓库主要的对 阅读全文
posted @ 2019-02-24 15:16 hank-li 阅读(221) 评论(0) 推荐(0) 编辑
摘要:您可以按下某些组合键来实现通常需要鼠标、触控板或其他输入设备才能完成的操作。 您可以按下某些组合键来实现通常需要鼠标、触控板或其他输入设备才能完成的操作。 要使用键盘快捷键,请按住一个或多个修饰键,然后按快捷键的最后一个键。例如,要使用 Command-C(拷贝),请按住 Command 键并按 C 阅读全文
posted @ 2019-02-24 11:52 hank-li 阅读(345) 评论(0) 推荐(0) 编辑
摘要:用scrapy框架迭代爬取时报错 scrapy日志: 在 setting.py 文件中 设置 日志 记录等级 LOG_LEVEL= 'DEBUG' LOG_FILE ='log.txt' 观察 scrapy 日志 2017-08-15 21:58:05 [scrapy.spidermiddlewar 阅读全文
posted @ 2019-02-21 22:02 hank-li 阅读(214) 评论(0) 推荐(0) 编辑
摘要:1.访问MongoDB官方下载地址 http://www.mongodb.org/downloads 2.点击“DOWNLOAD(tgz)”按钮: 3.将下载的文件压缩包解压后剪切到你的Mac中某个位置: 4.配置环境变量,打开终端,输入“open -e .bash_profile”: 5.定义MO 阅读全文
posted @ 2019-02-21 21:41 hank-li 阅读(242) 评论(0) 推荐(0) 编辑
摘要:关于拉勾网和Boss直聘对数据分析师岗位的要求,有以下几点: 1.具有扎实的统计学理论基础; 2.熟悉数据分析方法论; 3.熟悉SQL/HQL语句,掌握SQL调优; 4.熟悉掌握R/Python/C++/Java等至少一种编程语言; 5.掌握数据可视化; 6.良好的数据敏感度,能从海量数据提炼核心结 阅读全文
posted @ 2019-02-21 02:34 hank-li 阅读(483) 评论(0) 推荐(0) 编辑
摘要:1、打开 https://github.com ; 2、搜索 jsonView 链接:https://github.com/search?utf8=%E2%9C%93&q=jsonview; 3、选择需要的插件(我是选这个gildas-lormeau/JSONView-for-Chrome); 4、 阅读全文
posted @ 2019-02-20 18:43 hank-li 阅读(534) 评论(0) 推荐(0) 编辑
摘要:下载地址http://www.sublimetext.com/3 一、安装Package Control 按Ctrl + ` 调出console,粘贴下列安装代码到底部命令行并回车: 1 1 重启Sublime Text。如果在Perferences->Package Settings 中看到pac 阅读全文
posted @ 2019-02-18 23:24 hank-li 阅读(3444) 评论(0) 推荐(0) 编辑
摘要:application/x-www-form-urlencoded 这应该是最常见的 POST 提交数据的方式了。浏览器的原生 form 表单,如果不设置 enctype 属性,那么最终就会以 application/x-www-form-urlencoded 方式提交数据。请求类似于下面这样(无关 阅读全文
posted @ 2019-02-18 21:25 hank-li 阅读(700) 评论(0) 推荐(0) 编辑
摘要:content = etree.HTML(text) h = content.xpath('//h1') h1 = h[0].xpath('string(.)').strip() 阅读全文
posted @ 2019-02-18 12:38 hank-li 阅读(916) 评论(0) 推荐(0) 编辑
摘要:安装Package Control 安装过程: 使用快捷键 control + ` 或者菜单栏选择View > Show Console 安装Package Control参考官方页面. Sublime Text3在控制台输入 import urllib.request,os,hashlib; h 阅读全文
posted @ 2019-02-17 22:46 hank-li 阅读(1210) 评论(0) 推荐(0) 编辑
摘要:1. 修改hosts文件: 添加下面一行到hosts文件,目的是屏蔽掉Pycharm对激活码的验证**0.0.0.0 account.jetbrains.com ** windwos系统hosts文件路径为:C:\Windows\System32\drivers\etc如果遇到权限问题,可将host 阅读全文
posted @ 2019-02-17 19:25 hank-li 阅读(324) 评论(0) 推荐(0) 编辑
摘要:目录操作 命令名功能描述使用举例 mkdir 创建一个目录 mkdir dirname rmdir 删除一个目录 rmdir dirname mvdir 移动或重命名一个目录 mvdir dir1 dir2 cd 改变当前目录 cd dirname pwd 显示当前目录的路径名 pwd ls 显示当 阅读全文
posted @ 2019-02-17 18:53 hank-li 阅读(7559) 评论(0) 推荐(0) 编辑
摘要:在读取dict的key和value时,如果key不存在,就会触发KeyError错误,如: Python t = { 'a': '1', 'b': '2', 'c': '3', } print(t['d']) 就会出现: Python t = { 'a': '1', 'b': '2', 'c': ' 阅读全文
posted @ 2019-02-16 13:20 hank-li 阅读(5215) 评论(0) 推荐(0) 编辑
摘要:XPath,全称XML Path Language,即XML路径语言,它是一门在XML文档中查找信息的语言。它最初是用来搜寻XML文档的,但是它同样适用于HTML文档的搜索。 所以在做爬虫时,我们完全可以使用XPath来做相应的信息抽取。本节中,我们就来介绍XPath的基本用法。 1. XPath概 阅读全文
posted @ 2019-02-15 13:03 hank-li 阅读(566) 评论(0) 推荐(0) 编辑
摘要:要了解文件读写模式,需要了解几种模式的区别,以及对应指针 r : 读取文件,若文件不存在则会报错 w: 写入文件,若文件不存在则会先创建再写入,会覆盖原文件 a : 写入文件,若文件不存在则会先创建再写入,但不会覆盖原文件,而是追加在文件末尾 rb,wb:分别于r,w类似,但是用于读写二进制文件 r 阅读全文
posted @ 2019-02-14 23:46 hank-li 阅读(2988) 评论(0) 推荐(0) 编辑
摘要:windows 下安装tidylib 先去https://pypi.python.org/pypi/pytidylib 下载pytidylib 跑官方提供的测试用例报错 解决办法: 去http://www.paehl.com/open_source/?HTML_Tidy_for_Windows 下载 阅读全文
posted @ 2019-02-14 22:44 hank-li 阅读(694) 评论(0) 推荐(0) 编辑
摘要:需求: 因需要将一json文件中大量的信息填入一固定格式的Excel表格,单纯的复制粘贴肯定也能完成,但是想偷懒一下,于是借助Python解决问题。 环境: Windows7 +Python2.7 +Xlwt 具体分析: 原始文件为json列表,列表中有多个字典,生成Excel文件需要将列表中的字典 阅读全文
posted @ 2019-02-14 11:48 hank-li 阅读(3615) 评论(0) 推荐(0) 编辑
摘要:问题: 安装pywin32出现Python version 3.6 required, which was not found in the registry错误解决 解决: 建立一个文件 register.py 内容如下. 然后执行该脚本. 阅读全文
posted @ 2019-02-10 00:33 hank-li 阅读(488) 评论(0) 推荐(0) 编辑
摘要:问题: failed to create process/fatal error in launcher 解决: 阅读全文
posted @ 2019-02-10 00:14 hank-li 阅读(122) 评论(0) 推荐(0) 编辑
摘要:1. wheel pip install wheel 2. lxml http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml 3. PyOpenssl https://pypi.python.org/pypi/pyOpenSSL#downloads 4. Tw 阅读全文
posted @ 2019-02-09 23:47 hank-li 阅读(84) 评论(0) 推荐(0) 编辑
摘要:一、Mongodb导出工具mongoexport Mongodb中的mongoexport工具可以把一个collection导出成JSON格式或CSV格式的文件。可以通过参数指定导出的数据项,也可以根据指定的条件导出数据。mongoexport具体用法 C:\mongo\bin>mongoexpor 阅读全文
posted @ 2019-02-03 12:20 hank-li 阅读(599) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示