Python每日一练
犇犇~
这个作者很懒,什么都没留下…
展开
-
Python:每日一题 139:剔除列表中数字的倍数
已有一个由小到大数字组成列表,list1 = [3, 7, 10, 11, 12, 14, 15, 17, 18, 19, 20, 21, 22, 24, 26, 27, 28, 30, 32, 34, 35, 36, 39, 41, 42, 43, 45, 48, 49, 53, 64, 74, 78, 80, 88, 90, 91, 95, 96, 103, 107, 116, 142, 14...原创 2018-04-14 21:18:55 · 5740 阅读 · 0 评论 -
Python:每日一题 154:找到最高的得分单词
给定一串单词,你需要找到最高的得分单词。一个字的每个字母根据它在字母表中的位置得分:a = 1,b = 2,c = 3等您需要将最高得分的单词作为字符串返回。如果两个单词得分相同,则返回原始字符串中最早出现的单词。所有字母都是小写字母,所有输入都是有效的。Test:test.assert_equals(high('man i need a taxi up to ubud'), 'taxi')tes...原创 2018-04-13 20:12:16 · 527 阅读 · 0 评论 -
Python:每日一题 145:转换RGB颜色值
题目:转换RBG颜色值我们知道在网页中的颜色值设置都是用16进制的RGB来表示的,比如#FFFFFF,表示R:255,G:255,B:255的白色。现在请设计一个函数可以转换RGB的16进制至10进制,或者转换10进制至16进制输出格式。例:print( color("#FFFFFF"))>>>(255, 255, 255) print( color((255,255,255))...原创 2018-04-13 20:37:48 · 4331 阅读 · 1 评论 -
Python:每日一题 142:算出时间差(以秒计)
给出两个时间算出时间差(以秒计),如果结束时间小于开始时间则结束时间在下一天,开始和结束时间不超过1天。例如:start = 17:55:31stop = 4:21:57时间差为:37586sPython源码:def minus(start, end): _start = list(map(int, start.split(':'))) _end = list(map(int, e...原创 2018-04-13 21:00:32 · 1773 阅读 · 0 评论 -
Python:每日一题 170:建立一个函数mysum,参数为不确定个数的正整数、负整数或零,返回一个字符串为各个数字加法的算式和结果
建立一个函数mysum,参数为不确定个数的正整数、负整数或零,返回一个字符串为各个数字加法的算式和结果,例如:print(mysum(-7, 12,83, -99, 22, 0, 1))输出:-7+12+83-99+22+0+1=12注意:-99前不要加号,如果实在不会写,也可以先写成+-99提示,函数的参数数量不确定,可以使用收集参数。Python源码:def mysum(*args): ...原创 2018-04-11 17:35:12 · 2736 阅读 · 0 评论 -
Python:每日一题 174:找出斐波那契数列中包含0~9的连续10个数字
题目:找出斐波那契数列中包含0~9的连续10个数字。斐波那契数列大家都很熟悉,1, 1, 2, 3, 5, 8, 13, 21, 34, 55......如果把这些数量组成一个字符串就成为:'11235813213455',这里面'2134'是包含1234这四个数字的,继续下去可以找到第一个含有0~9这10个数字的地方(10个数字的次序随意),可能处于一个斐波那契数,有可能跨越2个或多个斐波那契数...原创 2018-04-11 17:25:14 · 683 阅读 · 0 评论 -
206
count = 0a = 5b = 8while count < 10: c = a + b strc = str(c) sum = 0 for i in strc: sum += int(i) if c % sum == 0: print(c) count += 1 a = b ...原创 2018-09-10 19:36:33 · 113 阅读 · 0 评论 -
204
strList = [chr(i) for i in range(65, 65+26)]strList += [chr(i) for i in range(97, 97+26)]def strrange(*args): def valid(arg): return len(arg) == 1 and arg.isalpha() if len(args) == ...原创 2018-09-10 19:37:02 · 211 阅读 · 0 评论 -
203
def func(i, n): if i == n: return n else: return i + 1 / func(i + 1, n)def solve(n): return func(1, n)for i in range(1, 11): print("func(%d)=" % i, solve(i))原创 2018-09-10 19:38:18 · 225 阅读 · 0 评论 -
Python:每日一题 156:神奇的6174
6174是个神奇的数字,一个任意的四位正整数(全相同的除外,如1111)。将数字重新组合成一个最大的数和最小的数相减,重复这个过程,最多七步,必得6174。现在编程验证此现象,输入一个每位数不完全相同的四位正整数,给出计算过程,最终得到6174,例如:输入2687打印8762-2678=60848640-468=81728721-1278=74437443-3447=39969963-3699=6...原创 2018-04-13 19:23:16 · 4051 阅读 · 0 评论 -
Python:每日一题 157:2的n次方3的n次方序列合并
2的n次方是2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048......3的n次方是3, 9, 27, 81, 243, 729, 2187......如果两个序列合并,并按由小到大排列则是2, 3, 4, 8, 9, 16, 27, 32, 64, 81, 128, 243, 256, 512, 729, 1024, 2048, 2187........原创 2018-04-13 19:11:03 · 1869 阅读 · 0 评论 -
Python:每日一题 137:小球从最高处逐层落下
小球从最高处逐层落下,每个节点都有可能向左下或右下方向下落,且几率相同,各占50%,共有10万个小球依次落下,当都从第0层落至第9层时图中0~9的10个位置各有多少个小球(这里为了与python一致,都是从0开始的)。由于是用随机数测算的,所以大家的结果不会相同,主要看一个趋势。Python源码:import random as rcounts = [0] * 10for i in range...原创 2018-04-14 21:33:37 · 2022 阅读 · 0 评论 -
Python:每日一题 135:筛选出能够分解成两个质数之和的
对于下列的一组数字,筛选出能够分解成两个质数之和的,如9可以分解为2+7,而11则无法分解成两个质数之和5, 6, 8, 13, 14, 15, 16, 17, 20, 21, 24, 26, 27, 30Python源码:list1 = [5, 6, 8, 13, 14, 15, 16, 17, 20, 21, 24, 26, 27, 30]primes = []for i in range...原创 2018-04-14 21:41:48 · 3032 阅读 · 1 评论 -
Python:每日一题 133:求列表元素个数生成新的列表
已有一个列表如下list1 = [12, 1, 3, 19, 0, 1, 16, 8, 19, 10, 6, 10, 0, 4, 3, 18, 2, 18, 17, 6, 16, 19, 12, 18, 4, 4, 16, 12, 13, 11, 0, 0, 12, 7, 10, 2, 7, 12, 4, 18, 13, 18, 16, 17, 14, 12, 1, 12, 4, 14, 8, 1...原创 2018-04-14 21:55:41 · 1426 阅读 · 0 评论 -
Python:每日一题 167:逗号左移一位
已知一个都是由两位数组成的列表(这里是为了简单些,其实可以改为都是由大于1位的多位数组成),例如[33, 54, 29, 75, 83, 15, 38, 30, 88, 15],现在要把逗号左移一位(不算空格)成为[3, 35, 42, 97, 58, 31, 53, 83, 8, 815],然后将最后的“5”移到第一个数的前面,得到[53, 35, 42, 97, 58, 31, 53, 83,...原创 2018-04-11 23:51:26 · 147 阅读 · 0 评论 -
Python:每日一题 166:求分数序列前20项和
有一分数序列:2/1,3/2,5/3,8/5,8/13,21/13...求出这个序列的前20项之和。以字符串 2/1+3/2+5/3+8/5+13/8+21/13+……= result 的形式返回结果。要求结果保留2位小数。提示:很容易看出这是用到了斐波那契数列,可以定义一个函数反复调用,但每次调用都从1开始计算,效率很低,可以采用生成器或直接在主程序中计算。Python源码:a1 = 1a2 ...原创 2018-04-12 00:05:45 · 5400 阅读 · 0 评论 -
Python:每日一题 165:打印中文乘法口诀表
一一得一 一二得二 二二得四 一三得三 二三得六 三三得九 一四得四 二四得八 三四一十二 四四一十六 一五得五 二五一十 三五一十五 四五二十 五五二十五 一六得六 二六一十二 三六一十八 四六二十四 五六三十 六六三十六 一七得七 二七一十四 三七二十一 四七二十八 五七三十五 六七四十...原创 2018-04-13 17:28:42 · 345 阅读 · 0 评论 -
Python:每日一题 162:将1~50的阶乘排在一起打印出来
我们知道1的阶乘是1,2的阶乘是2,3的阶乘是6,4的阶乘是24,将前4个数字的阶乘排在一起是12624,现在要求将1~50的阶乘排在一起打印出来,要求,每40个数字1行,当本行超过40个时换行到下一行,另外在每行的开头打印行号。最终的结果如下所示:( 1) 1262412072050404032036288036288003991680( 2) 0479001600622702080087...原创 2018-04-13 17:38:13 · 1185 阅读 · 0 评论 -
Python:每日一题 161:打印字母三角形
Python源码:def triangle(row): alphabet = ['%c' % i for i in range(65, 65+26)] for i in range(1, row+1): if i <= 26: string = ''.join(alphabet[:i] + list(reversed(alphabet[...原创 2018-04-13 18:01:07 · 4667 阅读 · 1 评论 -
201
def newzip(*args): result = [] if len(args) > 0: lens = list(map(len, args)) maxL = max(lens) for i in range(maxL): temp = [] for j in args:...原创 2018-09-10 19:56:37 · 228 阅读 · 0 评论