Python
TOMOCAT
知乎可私信: TOMOCAT
展开
-
[python]可视化利器:pyecharts
前言前面我们提及ggplot在R和Python中都是数据可视化的利器,在机器学习和数据分析领域得到了广泛的应用。pyecharts结合了Python和百度开源的Echarts工具,基于其交互性和便利性得到了众多开发者的认可。拥有如下的特点:可集成至Flask、Django等主流web框架相较于matplotlib等传统绘图库,pyecharts语法更加简洁,更加注重数据的呈现方式而非图形细节包含原生的百度地图,方便绘制地理可视化图形本文主要整理自pyecharts官网github文档:htt原创 2020-05-11 01:28:50 · 1632 阅读 · 0 评论 -
[python刷题]广度优先算法BFS介绍
参考:https://blog.csdn.net/a8082649/article/details/81395359简介广度优先搜索算法(Breadth First Search),又称为"宽度优先搜索"或"横向优先搜索",简称BFS; BFS是用于图的查找算法(要求能用图表示出问题的关联性)。BFS可用于解决2类问题:(1)从A出发是否存在到达B的路径;(2)从A出发到达B的最...原创 2019-01-07 11:11:32 · 34200 阅读 · 0 评论 -
[python刷题]二进制插入——理解二进制运算
题目描述有两个32位整数n和m,请编写算法将m的二进制数位插入到n的二进制的第j到第i位,其中二进制的位数从低位数到高位且以0开始。给定两个数int n和int m,同时给定int j和int i,意义如题所述,请返回操作后的数,保证n的第j到第i位均为零,且m的二进制位数小于等于i-j+1。测试样例:1024,19,2,6返回:1100# -*- coding:ut...原创 2019-01-07 10:36:50 · 33896 阅读 · 0 评论 -
[python刷题]词频统计
题目描述请设计一个高效的方法,找出任意指定单词在一篇文章中的出现频数。给定一个string数组article和数组大小n及一个待统计单词word,请返回该单词在文章中的出现频数。保证文章的词数小于等于1000。# -*- coding:utf-8 -*-class Frequency: def getFrequency(self, article, n, word): ...原创 2019-01-07 10:22:38 · 33625 阅读 · 0 评论 -
[python刷题]不用ifelse和判断符判断大小——无判断max
#思路:#数学里面最大值有公式#max(a,b)*2=a+b+|a-b|#同样求最小值的话,a + b - abs(a - b)即可。class Max: def getMax(self, a, b): # write code here return (a+b+abs(a-b))/2题目描述请编写一个方法,找出两个数字中最大的那个。条件...原创 2019-01-07 10:15:05 · 36819 阅读 · 0 评论 -
[python刷题]简单理解class的概念,python面向对象编程基础
面向对象技术简介Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的。本章节我们将详细介绍Python的面向对象编程。类(Class): 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。 类变量:类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例...原创 2019-01-05 21:08:01 · 34335 阅读 · 0 评论 -
[python刷题]牛客网1——数串
题目描述设有n个正整数,将他们连接成一排,组成一个最大的多位整数。如:n=3时,3个整数13,312,343,连成的最大整数为34331213。如:n=4时,4个整数7,13,4,246连接成的最大整数为7424613。输入描述:有多组测试样例,每组测试样例包含两行,第一行为一个整数N(N<=100),第二行包含N个数(每个数不超过1000,空格分开)。输出描述:...原创 2019-01-05 20:36:20 · 33793 阅读 · 0 评论 -
[python刷题]print()函数中的and和or
1、规则(1)在纯and语句中,如果每一个表达式都不是假的话,那么返回最后一个,因为需要一直匹配直到最后一个。如果有一个是假,那么返回假(2)在纯or语句中,只要有一个表达式不是假的话,那么就返回这个表达式的值。只有所有都是假,才返回假(3)在or和and语句比较难表达,总而言之,碰到and就往后匹配,碰到or如果or左边的为真,那么就返回or左边的那个值,如果or左边为假,继续匹配or右...原创 2019-01-05 20:32:50 · 41204 阅读 · 2 评论 -
[python刷题]牛客网6——洪水——BFS方法找矩阵中两点之间的最小距离
题目描述在一个nxm矩阵形状的城市里爆发了洪水,洪水从(0,0)的格子流到这个城市,在这个矩阵中有的格子有一些建筑,洪水只能在没有建筑的格子流动。请返回洪水流到(n - 1,m - 1)的最早时间(洪水只能从一个格子流到其相邻的格子且洪水单位时间能从一个格子流到相邻格子)。给定一个矩阵map表示城市,其中map[i][j]表示坐标为(i,j)的格子,值为1代表该格子有建筑,0代表没有建筑。...原创 2019-01-07 14:50:40 · 34198 阅读 · 1 评论 -
[python刷题]牛客网7——O(n)复杂度找相邻最大值
题目描述请设计一个复杂度为O(n)的算法,计算一个未排序数组中排序后相邻元素的最大差值。给定一个整数数组A和数组的大小n,请返回最大差值。保证数组元素个数大于等于2小于等于500。测试样例:[9,3,1,10],4返回:6class MaxDivision: def findMaxDivision(self, A, n): # write co...原创 2019-01-07 15:24:06 · 34520 阅读 · 0 评论 -
[爬虫]从零到一构建自己的免费代理IP池
工程目录├── db //提供IP池数据库增删查改功能 ├── progress_bar //提供循环进度条展示功能 ├── README.md //帮助文档 ├── proxy_getter │ ├── get_proxy.py //从xici获取爬虫代理IP到数据库 │ ├── random_headers.py ...原创 2019-08-31 21:17:58 · 1228 阅读 · 1 评论 -
[python]matplotlib.pyplot模块
参考文章https://www.jianshu.com/p/bf8233840687基本概念1、figure用画板和画纸来做比喻的话,figure就好像是画板,是画纸的载体,但是具体画画等操作是在画纸上完成的。在pyplot中,画纸的概念对应的就是Axes/Subplot。2、axes 和 subplot区别subplotadd_subplot()主要是用于绘制多张图的排版。...原创 2019-02-20 17:35:39 · 33776 阅读 · 0 评论 -
[python]从零开始构建自己的爬虫代理IP池
ProxyIPPool从零开始构建自己的代理IP池;根据代理IP网址抓取新的代理IP;对历史代理IP有效性验证源码:https://github.com/TOMO-CAT/ProxyIPPool为什么要使用代理IP在爬虫的过程中,很多网站会采取反爬虫技术,其中最经常使用的就是限制一个IP的访问次数。当你本地的IP地址被该网站封禁后,可能就需要换一个代理来爬虫。其中有很多网站提供免费的代...原创 2019-02-14 00:48:25 · 34076 阅读 · 0 评论 -
[python刷题]牛客网9——字符串旋转(字符串的处理)
题目描述对于一个字符串,和字符串中的某一位置,请设计一个算法,将包括i位置在内的左侧部分移动到右边,将右侧部分移动到左边。给定字符串A和它的长度n以及特定位置p,请返回旋转后的结果。测试样例:"ABCDEFGH",8,4返回:"FGHABCDE"# -*- coding:utf-8 -*-class StringRotation: def rotateSt...原创 2019-01-07 15:39:07 · 33372 阅读 · 0 评论 -
[python刷题]牛客网8——字符串替换replace
题目描述请编写一个方法,将字符串中的空格全部替换为“%20”。假定该字符串有足够的空间存放新增的字符,并且知道字符串的真实长度(小于等于1000),同时保证字符串由大小写的英文字母组成。给定一个string iniString 为原始的串,以及串的长度 int len, 返回替换后的string。测试样例:"Mr John Smith”,13返回:"Mr%20John%20...原创 2019-01-07 15:31:14 · 34489 阅读 · 0 评论 -
[python刷题]python排序函数sort和sorted
1、sort()函数注意sort()函数只能用在列表list的排序上ls = list([5, 2, 3, 1, 4])new_ls = sorted(ls)##或者使用ls.sort()即可,直接将ls改变print(new_ls)2、sorted()函数sorted()能用在任何可迭代对象的排序上,而且sorted的返回值都是一个列表。print(sorted({...原创 2019-01-05 20:00:12 · 33109 阅读 · 0 评论 -
[Python]《从入门到实践》第五章-if语句
#条件测试##特定值是否在列表中character = ['a','b','c','d','e']'a' in character'f' not in character#if-elif-else语句ages = list(range(1,50))aging=[]for x in ages: if x<=10: aging.append('儿童'...原创 2018-07-18 13:59:00 · 23245 阅读 · 0 评论 -
[Python]Spyder常用设置方便使用-持续更新
一、修改执行快捷键f9执行选定区域不太方便,我继续沿袭R中的ctrl+return的执行习惯,也可以修改成自己喜欢的。二、tab制表符和空格不要混用,只用一个...原创 2018-07-18 12:24:45 · 40742 阅读 · 2 评论 -
[Python]《从入门到实践》第四章-操作列表
#用循环遍历整个列表character=['a','b','c']print(character)for x in character: print (x)#在for循环中插入其他操作#缩进即是循环体,不缩进的单独执行 #创建数值列表##range 注意差一行为for x in range(1,5): print(x)##数字转化为列表number...原创 2018-07-18 12:16:20 · 23554 阅读 · 0 评论 -
[Python]《从入门到实践》第三章-列表简介
# -*- coding: utf-8 -*-"""Spyder EditorThis is a temporary script file."""# 创建列表bicycles = ['trek','cannondale','redline','specialized']print(bicycles)#访问元素print(bicycles[0]) #访问第一个元素prin...原创 2018-07-17 11:14:41 · 24033 阅读 · 0 评论 -
[Python]基础语法(三)常见函数网站
http://www.runoob.com/原创 2018-01-29 11:53:15 · 23253 阅读 · 0 评论 -
[Python]基础语法(二)文本处理函数
1、 spilt 通过特殊字符分割句子def break_words(stuff): word = stuff.split(' ') return wordsentense = "Wish a hanger in your mouth"word = break_words(sentense)word2、sorted对所有可迭代的对象进行排序操作。3、w原创 2018-01-29 11:05:59 · 23399 阅读 · 0 评论 -
[Python]基础语法(一)print
1、print里面的反斜杠2、如果希望得到跨越多行的字符串,则可用三重引号字符串3、格式化字符串 format stringmy_name = 'Zed A. Shaw'my_age = 35my_height = 74my_weight = 180my_eyes = 'Blue'my_teeth = 'White'my_hair = 'Brown'prin原创 2018-01-26 17:25:46 · 25145 阅读 · 0 评论 -
[Python]《从入门到实践》第六章-字典
#创建字典alien_0={'color':'green','points':5}#添加键值对alien_0['x_position']=0alien_0['y_position']=25print(alien_0)#创建空字典alien_0={}#删除键值对del alien_0['points']#遍历字典user_0={ 'username':'efe...原创 2018-07-19 20:38:55 · 23304 阅读 · 0 评论 -
[Python]《从入门到实践》第八章-函数
# -*- coding: utf-8 -*-"""Created on Wed Jul 25 17:51:29 2018@author: yangzifeng_i"""#指定默认值def describe_pet(pet_name,animal_type='dog'): print("\nI have a "+animal_type+".") print("\n.原创 2018-07-25 18:20:06 · 24954 阅读 · 0 评论 -
[Python]《从入门到实践》第九章-类
#创建和使用类class Dog(): def __init__(self,name,age): self.name = name self.age = age def sit(self): print(self.name.title()+" is now sitting.") def roll...原创 2018-07-25 19:53:34 · 24640 阅读 · 0 评论 -
[python刷题]python常说的可迭代对象是什么
1、迭代iteration给定一个list或者tuple,通过for循环来遍历这个list或者tuple、这种遍历就是迭代(iteration)。只要是可迭代的对象都可以进行迭代。2、例子:字典的迭代>>> d={'python':1,'php':2,'java':3}#默认迭代的是key>>> for i in d: print(i...原创 2019-01-04 19:05:36 · 43709 阅读 · 2 评论 -
[Python]NumPy入门
一、简单介绍NumPy是Python的一个矩阵类型,提供了大量矩阵处理的函数。它是一个使运算更容易,执行更迅速的库,因为它的内部运算是通过C语言而不是Python实现的。尽管声称是一个关于矩阵的库,但是NumPy实际上包含了两种基本的数据类型:数组和矩阵。两者在处理上稍有不同。在使用标准的Python时,处理这两种数据类型均需要使用循环语句,但是在NumPy时可以省去这些语句。二、NumP...原创 2018-08-05 00:11:54 · 25140 阅读 · 0 评论 -
[Python]anaconda中spyder编辑器导入自己模块的方法
#查看路径sys.path#在sys.path中加入自己所在模块的路径sys.path.append("C:\\Users\\iris\\Desktop\\alien_invasion")sys.path#此时查看到的路径包含自己添加的路径#此时可以直接引用自己的模块 ...原创 2018-08-04 20:41:59 · 35809 阅读 · 2 评论 -
[Python]《从入门到实践》第十章-读取、写入文件和处理异常
#处理异常##使用try-except代码块try: print(5/0)except ZeroDivisionError: print("You can't divide by zero!")##使用else输出正确结果print("Division:")print("Enter 'q' to quit.")while True: first_numbe...原创 2018-07-26 10:52:50 · 24331 阅读 · 0 评论 -
[Python]《从入门到实践》第七章-用户输入和while循环
#inout收集用户输入message2 = input('input:')print(message2)#使用int获取数值输入height = input("How tall are you, in inches? ")height = int(height)if height >=36: print("You are tall enough to ide")...原创 2018-07-20 18:38:10 · 23605 阅读 · 0 评论 -
[Python]学习笔记(一)安装与使用
1 IDLE是Python shell,一个通过键入文本与程序交互的途径。2 Python可以执行print("A"*5),但是如果执行print("A"+5)就会报错3 如果需要在字符串中使用双引号: (1)可以用单引号引出字符串 (2)可以用转义符 \"4 设置环境变量原创 2017-12-13 11:51:10 · 19142 阅读 · 0 评论