1.None和[]的区别以前以为None就是空,直到看到了下面这段代码list=[]iflistisNone:print"listisNULL"else:print"listis%s"%list发现输出是listis[],而不是listisNULL。这说明None和[]不等同。去翻了几篇博客后,才知道None表示的是这个对象还没创建,而[]表示的是这个对象创建了,但是还没有值。“一个盒子不装东西它还是一个盒子([]),你把盒子拆了它就是none了”2.关于
系统 2019-09-27 17:57:01 2137
我的需求很简单,就是统计一下我的安装脚本执行的次数和时间,格式是这样的install_times:1|install_times:2018-09-0315:58:46install_times:2|install_times:2018-09-0315:58:50install_times:3|install_times:2018-09-0315:58:54首先我需要判断一下文件是否为空,我开始是这样写的importtimeimportosfile_list
系统 2019-09-27 17:56:10 2137
使用selenium浏览器自动化测试框架爬取网易云音乐电台专栏代码#!/usr/bin/envpython#-*-coding:utf-8-*-#@Time:2019/7/921:02#@Author:nick#@Site:http://www.isscollege.com/fromseleniumimportwebdriverfromselenium.webdriver.chrome.optionsimportOptions#实例化一个启动参数对象chr
系统 2019-09-27 17:53:26 2137
前言在刚学习编程的时候总是忘记处理一些特例(尤其是动态语言可以传各种值),为了养成良好的编程和测试习惯,在编写单元测试用例的时候,我们注意考虑下如下测试用例(等价类划分):正常值功能测试边界值(比如最大最小,最左最右值)异常值(比如None,空值,非法值)实战操作defbinary_search(array,target):ifnotarray:return-1beg,end=0,len(array)whilebeg
系统 2019-09-27 17:50:52 2137
前言生成器是Python初级开发者最难理解的概念之一,虽被认为是Python编程中的高级技能,但在各种项目中可以随处见到生成器的身影,你得不得去理解它、使用它、甚至爱上它。提到生成器,总不可避免地要把迭代器拉出来对比着讲,生成器就是一个在行为上和迭代器非常类似的对象,如果把迭代器比作Android系统,那么生成器就是iOS,二者功能上差不多,但是生成器更优雅。什么是迭代器顾名思义,迭代器就是用于迭代操作(for循环)的对象,它像列表一样可以迭代获取其中的每
系统 2019-09-27 17:50:50 2137
Python实现归并排序算法归并排序1945年由约翰·冯·诺伊曼首次提出。该算法是采用分治法(DivideandConquer)的一个非常典型的应用,且各层分治递归可以同时进行。分治法的基本思想将原问题分解为若干个规模更小但结构与原问题相似的子问题。递归地解这些子问题,然后将这些子问题的解组合为原问题的解。归并排序的基本思想排序一个数组,我们先把数组从中间分成前后两部分,然后对前后两部分分别排序,再将排好序的两部分合并在一起,这样整个数组就都有序了。动画(
系统 2019-09-27 17:48:16 2137
一、isinstance()在Python中可以使用type()与isinstance()这两个函数判断对象类型,而isinstance()函数的使用上比type更加方便。复制代码代码如下:#coding=utf-8a=10defb():passprintisinstance(a,(int,str))printisinstance(a,(float,str))printisinstance(b,(str,int))classc:passobj=c()pri
系统 2019-09-27 17:46:09 2137
一、选题在《实践:数据结构与算法实践》中选择了“超级马里奥第一关”为最后作业的题目。超级马里奥是红白机上的横版过关类游戏。功能特性在于在实现人物移动的同时,要使背景的地图也要进行移动,还有砖块、怪物等其他要素也要进行移动,因为只有让两者一起进行移动,才能让人物和地图和其他的要素保持相对的位置。后期又加入了音效和美化了一下界面。点击此处下载文档和源码
系统 2019-09-27 17:45:43 2137
不管顺序的去重转为set即可1.将序列中重复元素去除,并保持顺序#如果序列items中的值是可哈希的defdedupe(items):seen=set()foriteminitems:ifitemnotinseen:yielditemseen.add(item)>>>a=[1,5,2,1,9,1,5,10]>>>list(dedupe(a))[1,5,2,9,10]写成函数形式是使程序更通用,如读文件去除重复行:withopen(somefile,'r')
系统 2019-09-27 17:45:27 2137
最近在项目中遇到这一需求:我需要一个函数工作,比如远程连接一个端口,远程读取文件等,但是我给的时间有限,比如,4秒钟如果你还没有读取完成或者连接成功,我就不等了,很可能对方已经宕机或者拒绝了。这样可以批量做一些事情而不需要一直等,浪费时间。结合我的需求,我想到这种办法:1、在主进程执行,调用一个进程执行函数,然后主进程sleep,等时间到了,就kill执行函数的进程。测试一个例子:importtimeimportthreadingdefp(i):print
系统 2019-09-27 17:38:46 2137