
python
文章平均质量分 52
csdn950212
想做一个文艺小青年,不用逻辑,凭感觉。偏偏走上了程序猿的道路,不靠感觉,用逻辑....
展开
-
递归-汉诺塔
我们对柱子编号为a,b,c,将所有圆盘从a移到c。规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。如果a只有一个圆盘,可以直接移动到c;如果a有N个圆盘,可以看成a有1个圆盘(底盘) + (N-1)个圆盘,首先需要把 (N-1) 个圆盘移动到 b,然后,将 a的最后一个圆盘移动到c,再将b的(N-1)个圆盘移动到c。def move(n转载 2016-11-08 20:39:39 · 371 阅读 · 0 评论 -
算法——m*n方格从左上角到右下角走法
m*n的方格,从左上角开始出发,只能向右走或向下走,一共有多少种走法?(1)动态规划import numpy as npdef left_to_right(m,n): d=np.zeros(dtype=int,shape=(m,n)) d[0][0]=0 for i in range(1,m): d[i][0]=1 for j in ra...原创 2019-07-04 11:01:44 · 12242 阅读 · 6 评论 -
python算法——堆排序
def build_min_heap(arr): for i in range(int(len(arr)/2),-1,-1): min_heapify(arr,i)def min_heapify(arr,i): c1=2*i+1 c2=2*i+2 min=i n=len(arr) if c1<n and arr[c1]&...原创 2019-07-09 13:50:09 · 187 阅读 · 0 评论 -
python学习——map()与reduce()函数
reduce函数与map函数有不一样地方,map操作是并行操作,reduce函数是多个参数累计操作。map()的使用方法形如map(f(x),Itera),它有两个参数,第一个参数为某个函数,第二个为可迭代对象,返回list。reduce()的使用方法形如reduce(function, iterable[, initializer]),它的形式和map()函数一样。不过参数f(x)必须有...原创 2019-06-18 17:09:55 · 255 阅读 · 0 评论 -
python——寻找最长公共前缀|寻找最长公共子串
1.寻找最长公共前缀(1)扫描法def subString(strs): result=strs[0] for i in range(1,len(strs)): while (strs[i].startswith(result)==False): result=result[0:len(result)-1] ...原创 2019-06-17 20:37:02 · 1243 阅读 · 1 评论 -
python学习之sort()与sorted()方法
sorted() 函数对所有可迭代的对象进行排序操作sort() 函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数sort()与sorted()的不同在于,sort是在原位重新排列列表,而sorted()是产生一个新的列表。sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。a.sort()sorted(a)...原创 2019-06-15 23:06:58 · 183 阅读 · 0 评论 -
python学习之requests库——response.text与response.content的区别
response.text返回的是unicode数据,是基于对原始数据的编码方式进行猜测而解码的,有时用text会出现中文乱码的情况。response.content返回bytes型数据,也就是二进制数据。如果想要获取文本型,可用text;如果想获得图片,用content...原创 2019-04-23 16:03:34 · 1377 阅读 · 0 评论 -
python爬虫——scrapy+selenium爬取新浪微博及评论
本文主要对爬取过程中所用到的知识做简单总结,最后有项目链接。一、项目简介本项目利用python的scrapy框架+selenium模拟登陆微博来爬取带有关键字的微博及微博下面的评论(1 、2级评论)。当时自己比较关注“小凤雅事件”,而微博又是舆论的战场,就想爬取“小凤雅事件”的相关微博以及评论,看看大家的关注点在哪里,于是就行动起来了。下面是对主要技术的介绍。二、scrapy介...原创 2019-01-21 21:24:47 · 7509 阅读 · 2 评论 -
python实现快速排序
# 快速排序时间复杂度平均为O(nlogn),最差为O(n*2),注意递归跳出条件def quick_sort(arr,start,end): if start >= end:#注意递归跳出条件 return key=arr[start] i=start j=end while i!=j: while arr[j]&...原创 2018-12-16 16:03:00 · 204 阅读 · 0 评论 -
python学习——网络爬虫
1、BeautifulSoup库与re正则表达式模块BeautifulSoup是一个可以从HTML或XML文件中提取数据的Python库;而re正则表达式模块进行各类正则表达式处理。2、BeautifulSoup对象类型Tag——HTML和XML文档中的标签Navigable String——Tag当中的字符串BeautifulSoup——BeautifulSoup对象表示的是...转载 2018-12-10 21:58:37 · 296 阅读 · 1 评论 -
python学习——Anaconda与PyCharm
一、Anaconda与Pycharm简述Anaconda是一个用于科学计算的Python发行版,核心功能是包管理和环境管理,可以很方便地解决多版本python并存、切换以及各种第三方包安装问题。PyCharm是一种Python IDE,为用户提供IDE开发环境,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、...原创 2018-05-31 16:06:26 · 5033 阅读 · 0 评论 -
python学习——将循环内容在一行输出
例子是输出九九乘法表如果按照如下程序写:# 输出九九乘法表 for i in range(10): for j in range(1,i+1): print("{}*{}={:2} ".format(j,i,i*j)) print('')就会出现下面的输出:这并不是我们想要的形式。print()会自动换行。python3中end属性...原创 2017-12-11 22:31:47 · 34265 阅读 · 3 评论 -
python学习———深拷贝与浅拷贝
import copyif __name__=='__main__': a = [1, 2, 3, 4, ['a', 'b', 'c']] b = a # 赋值 c = copy.copy(a) # 浅拷贝 d = copy.deepcopy(a) # 深拷贝 a[4][1]=9 a[1]=5 print a,id(a),id(a[...原创 2019-07-09 23:21:38 · 274 阅读 · 0 评论