Python

python每日经典算法题5(基础题)+1(较难题)

一:基础算法题5道1.阿姆斯特朗数如果一个n位正整数等于其各位数字的n次方之和,则称该数为阿姆斯特朗数。判断用户输入的数字是否为阿姆斯特朗数。(1)题目分析:这里要先得到该数是多少位的,然后再把每一位的数字截取出来,把各位数字的n次方之和和该数一起判断即可。(2)算法分析:python中有len()函数可以得到一个字符串的长度,因此需要先把一个正整数转化为正整数字符串。然后从高位向低位截取(也可以反过来)。或者高效算法利用for循环切片。从高位到低位:用正

系统 2019-09-27 17:56:25 2246

Python

python文件处理

1,linux文件知识补充~$ls-alldrwxr-xr-x2qiaozanqiaozan40968月621:21Templates-rw-r--r--1qiaozanqiaozan09月1707:53test.txt解读:d和-分别代表目录和普通文件。rwxr-xr-x分别代表"(用户/用户组/其它用户)“的”(可读/可写/可执行)"权限。可以使用chmod修改文件权限。如:linux中给一个文件加可执行权限:**chmod+x文件或用0~7的数字ch

系统 2019-09-27 17:54:35 2246

Python

python使用Scrapy框架抓取起点中文网免费小说案例

使用工具,ubuntu,python,pycharm一、使用pycharm创建项目:过程略二、安装scrapy框架pipinstallScrapy三、创建scrapy项目:1.创建爬虫项目scrapystartprojectqidian2.创建爬虫,先进入爬虫项目目录cdqidian/scrapygenspiderbookbook.qidian.com创建完成后项目目录如下目录下的的book.py就是我们的爬虫文件四、打开book.py编写爬虫的代码1.进

系统 2019-09-27 17:54:20 2246

Python

Python中模拟enum枚举类型的5种方法分享

以下几种方法来模拟enum:(感觉方法一简单实用)复制代码代码如下:#way1classDirections:up=0down=1left=2right=3printDirections.down#way2dirUp,dirDown,dirLeft,dirRight=range(4)printdirDown#way3importcollectionsdircoll=collections.namedtuple('directions',('UP','DOW

系统 2019-09-27 17:54:03 2246

Python

python3 md5加密实现

方法1通过argv实现1importhashlib2importsys3fromsysimportargv4input_name=hashlib.md5()#要加密的字符串5argv1=sys.argv[1]#获取要加密的字符串6input_name.update(argv1.encode("utf-8"))7print(input_name.hexdigest())方法2def函数方法实现importhashlibdefmd5vale(key):inpu

系统 2019-09-27 17:51:47 2246

Python

10款最好的Python开发编辑器

Python非常易学,强大的编程语言。Python包括高效高级的数据结构,提供简单且高效的面向对象编程。Python的学习过程少不了IDE或者代码编辑器,或者集成的开发编辑器(IDE)。这些Python开发工具帮助开发者加快使用Python开发的速度,提高效率。高效的代码编辑器或者IDE应该会提供插件,工具等能帮助开发者高效开发的特性。这篇文章收集了一些对开发者非常有帮助的,最好的10款PythonIDEs。如果你有其他更好的推荐,请在评论和大家分享一下:

系统 2019-09-27 17:49:59 2246

Python

python正则表达式中的括号匹配问题

问题:m=re.findall('[0-9]*4[0-9]*','[4]')可以匹配到4.m=re.findall('([0-9])*4([0-9])*','[4]')匹配不到4.这是为什么呢?PS,这个是一个简化的说明,我要用的正则比这个复杂,所以要用到(),表示一个序列的匹配。补充一点,我放在notepad++中用的时候,两种写法都能匹配出来,不知道为什么python中就不行了。答案:python的正则中用()会进行匹配,所以返回结果是['',''],

系统 2019-09-27 17:47:25 2246

Python

LeetCode—Python—136. 只出现一次的数字

1、题目描述https://leetcode-cn.com/problems/single-number/给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。你可以不使用额外空间来实现吗?示例1:输入:[2,2,1]输出:1示例2:输入:[4,1,2,1,2]输出:42、代码详解方法:列表操作遍历nums中的每一个元素如果某个nums中的数字是新出现的,则将它添加到列表

系统 2019-09-27 17:45:35 2246

Python

遍历python字典几种方法总结(推荐)

如下所示:aDict={'key1':'value1','key2':'value2','key3':'value3'}print'-----------dict-------------'fordinaDict:print"%s:%s"%(d,aDict[d])print'-----------item-------------'for(k,v)inaDict.items():print'%s:%s'%(k,v)#效率最高print'----------

系统 2019-09-27 17:38:15 2246

Python

Python验证企业工商注册码

中国企业工商注册码前六位为行政区代码,中间8位顺序编码,最后一位为根据ISO7064:1983.MOD11-2校验码计算出来的检验码,本算法根据最后一位校验码的算法来判断企业注册码是否合法,同时稍作修改也可用于判断其他校验码是否正确checknum.py#coding:utf-8defgetchecknum(input):##定义企业注册码校验码计算函数n=10fornuminrange(len(input)):n=(int(input[num])+n)%

系统 2019-09-27 17:38:03 2246

编程技术

【精心挑选】8款用于布局和用户界面增强的 jQue

equalize.js用于均衡元素的的高度或宽度的jQuery插件。这对于统一页面元素规格的布局非常有用。均衡id为width-example的元素的宽度的使用实例:?1$('#width-example').equalize('width');均衡class为parent的元素的子段落的使用实例:?1$('.parent').equalize({children:'p'});插件下载效果演示jQueryScrollPath这款插件用于实现自定义路径的滚动

系统 2019-08-29 23:13:25 2246

编程技术

闲话Command模式的异常处理

Command模式是GOF中较为简单的,用来封装行为的一个模式。在我们初涉设计模式的领域前,我们可能就在不知不觉中使用了它。比如说JAVA多线程中的Ruuable接口,比如说swing编程中用于处理事件的action,这些通通都是Command模式的使用。跟很多行为型模式一样,command模式用于降低接收者和发送者的耦合,我们经常可以在一些开源框架中看到,command实例对象常在层与层之间进行传递,接收者对于接收到的command,根本不知道其所能处理

系统 2019-08-29 23:06:55 2246