你如何随机生成x数量的值并存储它们?

时间:2010-03-06 16:43:44

标签: python ruby random

我在Stack Overflow主题上找到了一个关于初学者学习新语言应该做的问题的建议。用户发布了一个非常好的从初级到高级的问题列表,可以帮助您了解一种语言。其中一个问题是创建一个电话簿,随机电话号码和电话簿上随机的人,用户应该能够搜索电话号码并找到该人,反之亦然。

那么如何在没有数据库的情况下随机生成x个值并存储它们,特别关注Python和Ruby。

2 个答案:

答案 0 :(得分:1)

在解决此问题之前,您需要定义更多参数。

  • 每个人的电话号码都是唯一的吗?
  • 你如何存储名字?不同字符串中的名字和姓氏?所有在一个字符串?
  • 您想支持模糊匹配吗?
  • 您想提供反向查找功能吗? (I.E.根据电话号码查找某人?)

在Python中,您可以使用集合,列表和/或dicts完成所有这些操作,但您也可以查看sqlite3模块。

要在Python中生成随机的字母串,请执行以下操作:

import random
import string

minLength = 5 # the minimum length of the string.
maxLength = 15 # the maximum length of the string

randstring = string.join([random.choice(string.lowercase)
    for i in range(random.randrange(minlength,maxlength+1))], '')

要对数字执行相同操作,只需将random.lowercase替换为[1,2,3,4,5,6,7,8,9,0]

答案 1 :(得分:0)

使用Python,您可以使用random模块生成随机数。要存储电话号码,姓名,联系方式等,您可以使用数据库,例如SQLite