![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
概念常识
文章平均质量分 66
secular_
这个作者很懒,什么都没留下…
展开
-
Python杂记:列表生成
1.方式一使用[ ]来生成1.1生成1行1列的空列表1.2生成m行n列的全0列表2.方式二使用list()来生成1.1生成1行1列的空列表1.2list()用于类型转换将string转换为单个字符组成的list将tuple转换成list还可以对iterator进行转换(map()函数返回的是一个迭代器)3.二者比较空括号方式更加直观简单且运行快,但是功能比较局限,不能进行类型转换。而list()花费时间较长,通常用于类型转换这...原创 2021-10-16 17:12:52 · 1520 阅读 · 0 评论 -
十大排序算法总结及Python实现
1、冒泡排序1.1 思路概述以升序排序为例,依次对未排序部分两两比较,元素大的放后面,元素小的放前面。每一轮下来,未排序中最大的元素会被冒到未排序区域的最后一个位置,每一轮都会确定当前最大元素的最终位置,该元素确定后,就会从未排序元素中剔除。如果其中某一轮,没有发生元素交换,说明整个未排序数组都已经有序,则完成排序。1.2复杂度分析最好的情况是已经有序,则一轮结束,时间复杂度为O(n).最坏情况是逆序排序,则共需要经过n轮排序,每次复杂度为O(n),故时间复杂度为O(n^2).由于是就地..原创 2021-09-16 18:04:49 · 416 阅读 · 0 评论 -
jupyter notebook对多行代码同时添加前缀或者删除前缀(另附gif动图制作法)
这个功能虽然比较鸡肋,也比较少应用场景,但是好玩呀!在jupyter notebook中,将光标移到代码前面上,长按Alt,直到出现光标(十字形),然后鼠标按住下移,光标会延长,直到涵盖所有需要的代码。再添加或删除内容即可。如图:可以用来对多行代码添加注释,但是一般用Ctrl+/会比较快hhhh对于编写重复部分代码还是可以用上的,省去了复制粘贴。另外附上gif生成:https://www.cockos.com/licecap/下载完成以后会得到一个中空的窗口,类似一个相框,可原创 2020-10-19 14:27:00 · 5085 阅读 · 0 评论 -
解决csv.reader迭代器只能迭代一次的问题
在做项目过程中,需要对同一个CSV文件进行两次迭代,但是在第二次迭代时候,输出为空。这里用一个小例子表示:对这个简单的csv文件迭代第一次:迭代第二次:可以看到,第二次迭代的时候,输出为空。检查下迭代器可以发现,迭代器已经指到文件末尾了。这也是为什么第二次输出为空的原因。因此需要对迭代器进行刷新。暴力方式:生成新的迭代器(注意这里的迭代器指的是csv.reader,而不是item_t,因此如果只是将item_t改成如item_tt之类的是不起作用的。)在网原创 2020-10-18 21:37:19 · 2007 阅读 · 0 评论 -
Amdahl定律和Gustafson定律
本文摘自葛一鸣 老师的《实战java高并发程序设计》一书。因为觉得写得好就摘下来了将串行程序改造成并发程序,一般来说可以提高程序的整体性能,但是究竟能提升多少,甚至说究竟是否真的可以提高,还是一个需要研究的问题。目前,主要有两个定律对这个问题进行解答,一个是Amdahl定律,另一个是Gustafson定律。1.Amdahl定律Amdahl定律是计算机科学中非常重要的定律。它定义了串行系统并行化后的加速比的计算公式和理论上线。加速比定义: 加速比...转载 2020-10-16 20:25:19 · 3667 阅读 · 3 评论 -
云计算概念 IaaS PaaS SaaS
SaaS, PaaS, & IaaS定义SaaS: Software as a Service软件即服务(也称为云应用程序服务),云市场中企业最常用的选项。 SaaS利用互联网向其用户提供由第三方供应商管理的应用程序。 大多数SaaS应用程序直接通过Web浏览器运行,不需要在客户端进行任何下载或安装。软件的开发、管理、部署都交给第三方,不需要关心技术问题,可以拿来即用。普通用户接触到的互联网服务,几乎都是 SaaS应用。对于个人用户而言,常用的app网站如即时通讯软件,微博,邮件等,都是Sa原创 2020-10-16 17:22:42 · 848 阅读 · 1 评论 -
如何理解 95% 置信区间
https://www.zhihu.com/question/26419030?sort=created看马同学回答原创 2020-10-13 22:59:42 · 1382 阅读 · 0 评论 -
linux下tab自动补全功能
在Linux命令行下,输入字符后,按两次Tab键,shell就会列出以这些字符打头的所有可用命令。如果只有一个命令匹配到,按一次Tab键就自动将这个命令补全。比如,想更改密码,但只记得这个命令前几个字母是pass。这时候,按Tab键,shell就自动输出 passwd 命令,非常方便。当然,除了命令补全,还有路径、文件名补全。这个在我们 cd 到特定目录时特别好用。命令补全效果,如下: 那么,自己开发的程序,该怎么实现Tab自动补全?补全命令说明自动补全是Bas...转载 2020-10-12 19:53:41 · 14492 阅读 · 0 评论 -
Linux不挂断地运行命令 nohup
1.nohup用途:不挂断地运行命令。语法:nohup Command [ Arg … ] [ & ] 无论是否将 nohup 命令的输出重定向到终端,输出都将附加到当前目录的 nohup.out 文件中。 如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。 如果没有文件能创建或打开以用于追加,那么 Command 参数指定的命令不可调用。退出状态:该命令返回下列出口值: 126 可以查找但不能调用 Com.转载 2020-10-12 19:33:11 · 1120 阅读 · 0 评论 -
python中小数点后取2位(四舍五入)以及取2位(四舍五不入)的方法总结
在很多场景的计算中,最终得到的数值例如123.45678,要截取2位小数得到123.45,而不是默认的四舍五入方法得到123.46,如何实现呢?文章目录 一.小数点后取2位(四舍五入)的方法 方法一:round()函数 方法二:'%.2f' %f 方法 方法三:Decimal()函数 二.小数点后取2位(四舍五不入)的方法 方法一: 一.小数点后取2位(四舍五入)的方法方法一:roun...转载 2020-10-12 12:38:34 · 5929 阅读 · 1 评论 -
python判断变量类型(是否为int、字符串、列表、元组、字典等方法)
#!/usr/bin/env pythona = 1b = [1,2,3,4]c = (1,2,3,4)d = {'a':1,'b':2,'c':3}e = "abc"if isinstance(a,int): print "a is int"else: print "a is not int"if isinstance(b,list): print "b is list"else: print "b is not list"if isinstance(.转载 2020-10-12 12:29:02 · 3459 阅读 · 1 评论 -
Python中的浅拷贝(shallow copy)与深拷贝(deep copy)
先举个非常常见的例子:importcopylist1=[1,2,3,['a','b']]list2=list1list3=copy.copy(list1)list4=copy.deepcopy(list1)list1.append(5)list1[3].append('c')print'list1:',list1print'list2:',list2print'list3:',list3print'list4:',list4...转载 2020-10-11 21:09:17 · 1078 阅读 · 0 评论