wap建站后只能访问首页,餐厅网站设计模板下载,一级a做爰片试看 免费网站,WordPress程序主题转为app最近打算好好练习下 python#xff0c;因此找到一个练习题网站#xff0c;打算每周练习 3-5 题吧。
http://www.runoob.com/python/python-100-examples.html
另外#xff0c;这个网站其实也还有 Python 的教程#xff0c;从基础到高级的知识都有。 Example-1 三位数组合…最近打算好好练习下 python因此找到一个练习题网站打算每周练习 3-5 题吧。
http://www.runoob.com/python/python-100-examples.html
另外这个网站其实也还有 Python 的教程从基础到高级的知识都有。 Example-1 三位数组合 题目有四个数字1、2、3、4能组成多少个互不相同且无重复数字的三位数各是多少 思路
最简单的方法就是穷举法了分别求出在百位、十位、个位上的数字然后剔除出现重复数字的组合剩余的就是答案了。
代码实现
直接代码实现如下
def create_three_digits(number_start1, number_end4):给定指定数字范围比如1到4求可以组成多少个无重复的三位数:param number_start: 起始数字:param number_end: 结束数字:return: 返回数量以及可能的三位数的列表count 0result_list list()for i in range(number_start, number_end 1):for j in range(number_start, number_end 1):for k in range(number_start, number_end 1):if (i ! j) and (i ! k) and (j ! k):count 1result_list.append(str(i) str(j) str(k))return count, result_list写得更加简便点可以采用列表推导式
def create_three_digits2(number_start1, number_end4):采用列表推导式实现:param number_start::param number_end::return:return [str(i) str(j) str(k) for i in range(number_start, number_end 1) for j inrange(number_start, number_end 1) for k inrange(number_start, number_end 1) if (i ! j) and (i ! k) and (j ! k)]输出结果如下总共有 24 种不同的排列组合。
valid count24, and they are:
123
124
132
134
142
143
213
214
231
234
241
243
312
314
321
324
341
342
412
413
421
423
431
432当然目前这种代码实现的时间复杂度是很高的毕竟是三个for循环。如果有更好的解法可以在评论留言告诉我
知识点复习–列表推导式
列表推导式又称列表解析式提供了一种简明扼要的方法来创建列表。
它的结构是在一个中括号里包含一个表达式然后是一个 for 语句然后是 0 个或多个 for 或者 if 语句。那个表达式可以是任意的意思是你可以在列表中放入任意类型的对象。返回结果将是一个新的列表在这个以 if 和 for 语句为上下文的表达式运行完成之后产生。
用代码表示列表推导式如下
variable [out_exp for out_exp in input_list if out_exp 2]一个简明的例子如下
multiples [i for i in range(30) if i % 3 is 0]
print(multiples)
# Output: [0, 3, 6, 9, 12, 15, 18, 21, 24, 27]那么什么时候最适合用列表推导式呢
其实是当你需要使用 for 循环来生成一个新列表。举个例子你通常会这样做
squared []
for x in range(10):squared.append(x**2)这时候采用列表推导式最合适
squared [x**2 for x in range(10)]源代码在
https://github.com/ccc013/CodesNotes/blob/master/Python_100_examples/example1.py 参考文章
列表推导式list comprehensions
欢迎关注我的微信公众号–机器学习与计算机视觉或者扫描下方的二维码大家一起交流学习和进步 往期精彩推荐
学习笔记
机器学习入门系列1–机器学习概览[GAN学习系列] 初识GAN[GAN学习系列2] GAN的起源[GAN学习系列3]采用深度学习和 TensorFlow 实现图片修复(上
数学学习笔记
程序员的数学笔记1–进制转换程序员的数学笔记2–余数程序员的数学笔记3–迭代法
Github项目 资源教程推荐
[Github 项目推荐] 一个更好阅读和查找论文的网站[资源分享] TensorFlow 官方中文版教程来了必读的AI和深度学习博客[教程]一份简单易懂的 TensorFlow 教程[资源]推荐一些Python书籍和教程入门和进阶的都有