首页 > 其他 > 详细

(语法糖)列表生成式之怪诞--(暂时无法理解)

时间:2019-11-29 12:57:11      阅读:72      评论:0      收藏:0      [点我收藏+]

事情发生背景:

  题目是:有10万个随机数,请写一段代码,找出前10个最小的。

  一开始我想的是直接用python语法糖(列表生成式)生成一个随机的10万个数字。

  但是我发现以我目前的能力完成不了,因此我就用了一个列表和一个列表生成式做出了一个伪随机数.

  import random
  import heapq
  list1 = []
  for a in range(20,2000000):
list1.append(a)
  list2 = []
  for i in range(10000):
  list2.append(random.choice(list1))
  res = heapq.nsmallest(10, list2)
  print(res)

技术分享图片

事情经过:
  问题这样也就解决了(虽然是不完美的解决),但是我觉得不够简洁,基于PythonIC(该名词上面有详细介绍)的严谨,就想到直接列表生成式做出伪随机数。
  于是就有了这样(自认为的)怪诞。。。
   
  
  import random
  list1 = []
  list2 = []
  #双层伪随机数造成伪最终的随机数
  list1 = [list1.append(random.randint(1,2000000))for i in range(1,20000)]
  print(list1)
  list2 = [list2.append(random.choice(list1))for i in range(20)]
  print(list2)

技术分享图片

 

 

 

 

 为什么会是None类型呢???的目前我无法理解的事情,记录下来,等待以后自己有足够的知识背景再来解释,大家有什么想法也可以讨论下。

(语法糖)列表生成式之怪诞--(暂时无法理解)

原文:https://www.cnblogs.com/yp19970/p/11956720.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!