如何随机生成x个值并存储?

-1 投票
2 回答
824 浏览
提问于 2025-04-15 20:05

我在Stack Overflow上看到一个建议,关于初学者应该做哪些练习来学习一门新语言。有用户分享了一份很棒的问题列表,从初级到高级,帮助你熟悉这门语言。其中一个问题是创建一个电话簿,里面有随机的电话号码和随机的人名,用户可以根据电话号码找到对应的人,反之亦然。

那么,如何在不使用数据库的情况下,随机生成一定数量的值并存储它们,特别是针对Python和Ruby这两种语言呢?

2 个回答

0

在Python中,你可以使用random模块来生成随机数字。如果你想存储电话号码、名字、联系人等信息,可以使用数据库,比如SQLite

1

在你解决这个问题之前,需要先定义一些额外的参数。

  • 每个人的电话号码是唯一的吗?
  • 你打算怎么存储名字?是把名字和姓氏放在不同的字符串里,还是放在一个字符串里?
  • 你想支持模糊匹配吗?
  • 你想提供反向查找功能吗?(也就是说,根据电话号码查找一个人?)

在Python中,你可以用集合、列表和字典来实现这些功能,不过你也可以看看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]就可以了。

撰写回答