如何使用符号生成随机字符串

时间:2017-11-02 10:50:14

标签: python symbols generated

我的代码:

import random
import string
random = ''.join([random.choice(string.ascii_letters + string.digits ) for n in range(12)])

到目前为止,它打印的字符串包含大写,小写字母和数字,但我不知道如何使其成为打印符号。

4 个答案:

答案 0 :(得分:2)

怎么样:

import random
import string
random = ''.join([random.choice(string.ascii_letters + string.digits + string.punctuation ) for n in range(12)])

答案 1 :(得分:0)

尝试:

import random
import string
random = ''.join([random.choice(string.ascii_letters + string.digits  ) for n in 
range(12)])
print(random)`

答案 2 :(得分:0)

要生成随机字符串,我们需要使用以下两个Python模块。

  • 包含各种字符串常量的字符串模块,其中包含 所有情况的ASCII字符。字符串模块包含单独的 小写,大写字母,数字和特殊字符的常量 字符。
  • 随机模块以执行随机数生成。

    让我们看看生成固定长度为n的随机字符串的步骤。

  • 使用字符串常量string.ascii_lowercase获取所有 单个字符串中的小写字母。

  • string.ascii_lowercase常量包含所有小写字母。 即'abcdefghijklmnopqrstuvwxyz'运行循环n次 使用random.choice从字符串常量中选择一个字符 方法,然后使用join方法将其添加到字符串变量。的 用于从列表中选择单个字符的选择方法

  • 例如,假设您想要一个长度为6的随机字符串,那么我们可以 执行一次random.choice()方法6次以从中选择一个字母 string.ascii_lowercase并将其添加到字符串变量。

现在让我们看看代码。

import random
import string

def randomStringwithDigitsAndSymbols(stringLength=10):
    """Generate a random string of letters, digits and special characters """
    password_characters = string.ascii_letters + string.digits + string.punctuation
    return ''.join(random.choice(password_characters) for i in range(stringLength))

print("Generating Random String password with letters, digits and special characters ")
print ("First Random String ", randomStringwithDigitsAndSymbols() )
print ("Second Random String", randomStringwithDigitsAndSymbols(10) )
print ("Third Random String", randomStringwithDigitsAndSymbols(10) )

输出:

Generating Random String password with letters, digits and special characters 
First Random String password  qKDhC++T(4
Second Random String password  U+(ew5a[#U
Third Random String password  uf-g,s6'pX

使用此链接了解更多详细信息,Click here

答案 3 :(得分:0)

另一种变体:

import random
import string
random_string = ''.join([random.choice(string.ascii_letters + string.digits + string.punctuation ) for n in range(12)])

在这种情况下,您无需重新定义random表单库。