python地下室,地下室用红宝石?

2024-04-23 11:14:00 发布

您现在位置:Python中文网/ 问答频道 /正文

嗨,我需要用ruby编写的代码我不知道如何编写地下室,地下室方法,有什么想法吗?在

(我想模拟linux comand.htpasswd)

import random
import crypt

letters = 'abcdefghijklmnopqrstuvwxyz' \
          'ABCDEFGHIJKLMNOPQRSTUVWXYZ' \
          '0123456789/.'
salt = random.choice(letters) + random.choice(letters)

password = "bla"

print crypt.crypt(password, salt)

Tags: 方法代码importlinuxrandompasswordsaltruby
2条回答

Jordan已经告诉过您String#crypt,所以我将向您展示一种创建字母数组的简单方法:

letters = [*'a'..'z'] + [*'A'..'Z'] + [*0..9] + %w(/ .)

更新:由于这是在2年多后被投票通过的,我不妨添加1.9的方法来实现这一点(使用多个splats和字符字面值):

^{pr2}$

我相信Ruby的String#crypt相当于Python的地下室,地下室,因此相当于您的代码的Ruby类似于:

letters = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789/.'
salt = letters[rand letters.length].chr + letters[rand letters.length].chr

password = "bla"

puts password.crypt(salt)

相关问题 更多 >