python
dou_being
这个作者很懒,什么都没留下…
展开
-
python递归实现逆序输出数字
该问题要求输入任意一个整数,实现它的逆序输出。首先判断输入的整数是正整数还是负整数,如果是负整数, 则在逆序输出前应先打印出负号。逆序输出数字实际是一个数值问题的递归。编程实现将输入的整数逆序输出。原创 2023-08-13 16:11:42 · 5237 阅读 · 0 评论 -
python实现猴子吃桃算法
一个猴子摘了一些桃子,它第一天吃掉了其中的一半然后再多吃了一个,第二天照此方法又吃掉了剩下桃子的一半加一个,以后每天如此,直到第十天早上,猴子发现只剩下一个桃子了,问猴子第一天总共摘了多少个桃子?可以使用递归函数来实现上述递推关系:假设第n天吃完后剩下的桃子数为A(n), 第n+1天吃完后剩下的桃子数为A(n+1),递推关系为:A(n)=(A(n+1)+1)*2。假设Ai为第i天吃完后剩下的桃子的个数,A0表示第一天共摘下的桃子。根据问题描述,前后相邻两天之间的桃子数的关系为: A=2(A(i+1)+1)原创 2023-04-02 22:28:04 · 2579 阅读 · 0 评论 -
python实现递归算法解决年龄问题
2、要求出第5个人的年龄,则必须先知道第4个人的年龄,显然第4个人的年龄也是未知的, 但可以由第3个人的年龄推算出来。(2)将age(n)=10,n=1转成一个函数,在main()函数中通过调用age(n)函数就可以获知第n个人的年龄 (3)每次调用age()函数时并不会马上获得年龄值,而是不断地进行递归调用,直到调用到age(1)时才有确定的年龄值,然后再从age(1)一步步地递推回去。在调用f1()函数的过程中,f1()又调用了函数f2(), 而在调用函数f2()的过程中,又调用了f1()原创 2023-06-24 16:54:00 · 4097 阅读 · 0 评论 -
使用python实现百钱百鸡问题
使用python实现百钱百鸡问题原创 2023-02-12 15:35:39 · 6328 阅读 · 1 评论 -
使用python实现兔子产子问题
使用python语言实现兔子产子问题。原创 2023-01-01 14:49:39 · 1572 阅读 · 0 评论 -
使用python库matplotlib绘制不同的图表
如题,使用python中的matplotlib绘制图表,主要分享绘制简单的曲线图、单条曲线图、多条曲线图、直方图以及散点图的思路和用法。1、绘制简单曲线图思路:通过3个坐标点,绘制曲线import matplotlib.pyplot as pltplt.plot([1, 3, 5], [4, 8, 10]) # 横坐标:1,3,5,纵坐标:4,8,10# 显示所画的图plt.show() 运行效果如图:2、绘制单条曲线图思路:先通过linspace绘制一条直线,然后..原创 2022-03-27 22:58:35 · 3186 阅读 · 1 评论 -
使用python3.x实现文件遍历
使用python3.6及以上版本,通过遍历查找出某个文件夹内所有的子文件和指定后缀的所有文件,示例如下:#!/usr/bin/env python3# -*- coding: utf-8 -*-import osdef get_files(path='E:\\xx', rule=".py"): all = [] # os.walk是获取所有的目录 for fpath, dirs, fs in os.walk(path): for f in fs:原创 2022-05-01 23:31:19 · 1098 阅读 · 0 评论 -
python3实现下载ftp上的文件
如题,使用python3中ftplib模块实现将ftp服务器上的文件下载到本地。Demo如下:import ftplibimport osfrom pathlib import Pathimport timedef ftpDownload(curTime): host = r'ftp.xx.cn' port = 21 user = '账号' password = '密码' LocalDir = 'data/FTP/%s' % curTime原创 2021-12-26 15:11:51 · 2855 阅读 · 0 评论 -
python实现字符串中中文在前,数字在后且按从小到大排序
如题:使用python3.x 实现一个包含中文数字的字符串中,输出为中文在前面,数字在后面且按从小到大排序。思路:先将字符串进行排序,然后通过字符串分割实现中文再前面,数字在后面。(欢迎交流其他思路)#!/usr/bin/env python# -*- coding: utf-8 -*-# 排序转换函数def my_sort(data): res = sorted(data, key=lambda item: ([str, int].index(type(item)), item原创 2020-11-28 21:14:29 · 1318 阅读 · 1 评论 -
python实现完全数
求1000以内的完全数。所谓完全数是指,如果一个数恰好等于它的因子之和,则称该数为“完全数”,又称完美数或完备数。例如:第一个完全数是6,它有约数 1、 2、 3、 6,除去它本身6外,其余3 个数相加,1+2+3=6。 第二个完全数是28,它有约数 1、 2、 4、 7、 14、 28,除去它本身28外,其余5个数相加,1+2+4+7+14=28#!/usr/bin/env py...原创 2020-02-17 14:43:08 · 20059 阅读 · 3 评论 -
用python实现水仙花数
求100-999 所有的"水仙花数"。所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。 例如: 153 是一个"水仙花数",153=1的三次方+5的三次方+3的三次方。#!/usr/bin/env python3# -*- coding: utf-8 -*-sxh = []for i in range(100, 1000): s = 0 m = li...原创 2020-02-17 14:15:16 · 2482 阅读 · 1 评论 -
python实现字符串切割
已知一个字符串为“hello_world_python”,使用python字符串切割得到一个队列["hello","world","python"]。#!/usr/bin/env python3# -*- coding: utf-8 -*-"""python字符串切割例子:已知一个字符串为“hello_world_python”, 得到一个队列["hello","world",...原创 2020-02-16 23:10:10 · 1037 阅读 · 0 评论 -
python实现字符串切片
如题,使用python实现字符串切片,提供两种思路方法:方法一:使用python的切片Slice操作符方法二:传统思维,遍历以下是Demo(代码基于python3.6):比如从字符串"awegbytrcuimdpon",得到结果字符串"abcd"#!/usr/bin/env python3# -*- coding: utf-8 -*-# 方法一a = "awegby...原创 2020-02-16 22:33:29 · 782 阅读 · 0 评论 -
Python统计在一个队列中有多少个正数,多少个负数
如题,使用python统计在一个列表中的数字,有多少个正数,多少个负数。思路一:使用列表生成式,生成新的列表思路二:传统判断思维,累加以下是Demo(代码基于python3.6):#!/usr/bin/env python3# -*- coding: utf-8 -*-# 方法一a = [11, 3, -9, -4, 25, 27, 0, -1, -5, 8, -27, ...原创 2020-02-16 22:07:36 · 8075 阅读 · 0 评论 -
Python实现列表去重的⽅法
使用python实现列表去重的思路:使用set集合,因为set集合可以去除重复元素,先使用set转为集合,然后再使用list将集合变回列表。例如:#!/usr/bin/env python3# -*- coding: utf-8 -*-"""Python实现列表去重的⽅法"""list_str = "11,13,14,5,13,11,16"lis = list_str.s...原创 2020-02-15 23:40:24 · 402 阅读 · 0 评论 -
python3.x 使用正则表达式拆分字符串并换行显示
最近使用正则表达式拆分化学式,且拆分后的化学式要换行显示,于是用python正则表达式写了一个拆分字符串且拆分后的字符串换行显示的Demo,主要使用正则re模块的findall方法。关于findall的语法格式如下:re.findall(pattern,string,flags=0)参数说明:pattern:正则表达式string:待匹配的字符串flag...原创 2019-11-19 15:58:52 · 1461 阅读 · 0 评论 -
macOS解决sublime text3运行python3报:UnicodeEncodeError: 'ascii' codec can't encode characters in position
在macOS中,使用sublime text3运行python3代码,打印语句中含有中文字符时报错, 解决方法如下:修改Sublime Text3中的设置,Preferences > Browse Packages > User > Python3.sublime-build,如果不存在这个文件,可以通过新建编译系统保存为这个文件,在该文件中加上一句:"env":...原创 2018-06-17 12:53:31 · 2229 阅读 · 0 评论 -
使用python编写单元测试
使用python3.6编写一个单元测试demo,例如:对学生Student类编写一个简单的单元测试。1、编写Student类:#!/usr/bin/env python3# -*- coding: utf-8 -*-class Student(object): def __init__(self,name,score): self.name = name self.sc...原创 2018-04-22 16:19:47 · 8611 阅读 · 0 评论 -
python3.6中@property装饰器的使用
1、@property装饰器的使用场景简单记录如下:负责把一个方法变成属性调用; 可以把一个getter方法变成属性,@property本身又创建了另一个装饰器@score.setter,负责把一个setter方法变成属性赋值; 只定义getter方法,不定义setter方法就是一个只读属性2、通过一个例子来加深对@property装饰器的理解:利用@property给一个Scre...原创 2018-04-16 23:31:38 · 365 阅读 · 0 评论 -
python中filter函数的使用
利用filter()筛选出1~1000的回数,回数是指从左向右读和从右向左读都是一样的数,例如12321,909。思路:利用切片def is_palindrome(n): return str(n) == str(n)[::-1]output = filter(is_palindrome,range(1,1000))print('1~1000的回数如下:',list(output)...原创 2018-04-13 00:03:06 · 1681 阅读 · 1 评论 -
使用Python中的reduce()函数求积
编写一个prod()函数,可以接受一个list并利用reduce()求积。from functools import reducedef prod(x,y): return x * yL = reduce(prod,[3,5,7,9])print(L)打印结果如下:原创 2018-04-12 23:29:42 · 3426 阅读 · 0 评论 -
使用Python,将字符串的首字母变为大写,其余都变为小写
利用map()函数,把用户输入的不规范的英文名字,变为首字母大写,其他小写的规范名字。思路:使用capitalize()函数将字符串的首字母转为大写,其余变为小写L1 = ['AdmIn','anny','LUCY','sandY','wILl']def normallize(name): return name.capitalize()L2 = list(map(normalli...原创 2018-04-12 23:20:31 · 39214 阅读 · 1 评论 -
python3实现zip格式压缩文件夹
思路:先把第一级目录中的文件进行遍历,如果是文件,则把它连同当前路径一起加入result(list),如果是子目录,则在整个目录上继续深度优先遍历,直到所有的文件都被加入。主要使用python3中zipfile模块:class zipfile.ZipFile(file [,mode [,compression [,allowZip64 ] ] ] )参数说明:1.第一个参数file可以...原创 2018-08-10 00:15:57 · 9673 阅读 · 1 评论 -
python3运行报错:TypeError: Object of type 'type' is not JSON serializable解决方法
报这个错的原因是因为json.dumps函数发现字典里面有bytes类型的数据,无法编码。解决方法:在编码函数之前写一个编码类,只要检查到了是bytes类型的数据就把它转化成str类型。这个编码类代码示例如下:#!/usr/bin/env python3# -*- coding: utf-8 -*-import jsonclass MyEncoder(json.JSONEnc...原创 2018-09-01 20:52:17 · 61707 阅读 · 5 评论 -
python3使用腾讯企业邮箱发送邮件
1.腾讯企业邮箱SMTP服务器地址:smtp.exmail.qq.com,ssl端口为:4652.确保腾讯企业邮箱中开启了SMTP服务:3.示例代码:#!/usr/bin/env python3# -*- coding: utf-8 -*-import smtplibfrom email.mime.text import MIMETextfrom email.utils...原创 2018-09-19 00:25:56 · 35891 阅读 · 1 评论 -
python3 对象与json相互转换
python主要有三种数据类型:字典、列表、元组,其分别由花括号,中括号,小括号表示。 例如: 字典:dictData={'a':12,'b':34} 列表:listData=[1,2,3,4] 元组:tupleData=(1,2,3,4) 使用json时,导入import json即可 python对象转json字符串,主要用到的函数:json.dumps()。例如:示例1:...原创 2018-11-04 00:20:57 · 10678 阅读 · 0 评论 -
python3.X 使用schedule实现定时任务
1.如果没有安装schedule模块需要先安装schedule,安装命令如下:pip install schedule2.安装好后可以参考以下demo:import scheduleimport timedef job(): print("I'm working...")# 每隔5分钟执行一次任务schedule.every(5).minutes.do(job)# ...原创 2019-04-11 00:05:12 · 1884 阅读 · 0 评论 -
Win7系统中同时安装了python2.x和python3.x,如何设置默认启动的python版本
现在Windows系统同时兼容了python2和python3的两个版本,但安装的时候会默认使用python2.x或python3.x的版本,却不是自己想要的那个默认的版本。那么,如何设置自己想要的默认启动的python版本呢?网上看了许多方法,感觉操作都挺麻烦的,于是总结了下自己的一个方法供大家参考。 其实设置默认启用的python版本只要设置下环境变量就可以了,将自己想要...原创 2018-05-22 23:57:15 · 2868 阅读 · 0 评论