在 Python 中生成一个随机字母

在 Python 中生成一个随机字母

Generate a random letter in Python

要生成随机字母:

  1. 使用该string.ascii_letters属性获取一串字母。
  2. 使用该random.choice()方法获取随机字母。
  3. random.choice()方法从序列中返回一个随机元素。
主程序
import string import random # ✅ generate random letter print(random.choice(string.ascii_letters)) # 👉️ V # ✅ generate random uppercase letter print(random.choice(string.ascii_uppercase)) # 👉️ D # ✅ generate random lowercase letter print(random.choice(string.ascii_lowercase)) # 👉️ n # ✅ generate N random letters print(''.join(random.choices( string.ascii_lowercase, k=5 ))) # 👉️ xtjmn

我们使用该string模块获取包含 ASCII 字母的字符串。

主程序
# 👇️ abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ print(string.ascii_letters) print(string.ascii_lowercase) # 👉️ abcdefghijklmnopqrstuvwxyz print(string.ascii_uppercase) # 👉️ ABCDEFGHIJKLMNOPQRSTUVWXYZ

string.ascii_letters

属性返回包含大写和小写 ASCII 字母的字符串

string.ascii_uppercase
属性返回一个字符串,
其中A包含从到
的大写字母
Z

string.ascii_lowercase
属性返回一个包含从

的小写字母的
字符串az

random.choice方法接受
一个序列并从非空序列返回一个随机元素。

主程序
import random print(random.choice('bobbyhadz.com')) # 👉️ o

如果你需要得到一个由 N 个随机字母组成的字符串,使用较新的
random.choices()方法。

在 Python 中生成一串 N 个随机字母

要生成一个包含 N 个随机字母的字符串:

  1. 使用该string模块获取一串字母。
  2. 使用该random.choices()方法获取随机字母列表。
  3. 使用该str.join()方法将字母列表连接成一个字符串。
主程序
import string import random def get_random_letters(length): return ''.join( random.choices( string.ascii_lowercase, k=length ) ) print(get_random_letters(4)) # 👉️ yvdi print(get_random_letters(8)) # 👉️ ekvrfqbm

random.choices
方法
接受
一个序列和一个
k关键字参数,并返回k从序列中选择的元素的大小列表。

主程序
import string import random # 👇️ ['V', 'Y', 'M', 'E', 'N'] print(random.choices(string.ascii_uppercase, k=5))
一旦我们有了一个随机字符和数字的列表,我们就可以使用该方法将列表连接成一个字符串。 str.join()

str.join方法将一个可迭代对象作为参数并返回一个字符串,该字符串是可迭代对象中字符串的串联。

主程序
import string import random # 👇️ "AWDOJ" print(''.join(random.choices(string.ascii_uppercase, k=5)))

调用该方法的字符串用作元素之间的分隔符。

如果您使用的 Python 版本早于 3.6,请使用该方法而不是. random.choice()random.choices()
主程序
import string import random def get_random_letters(length): return ''.join( random.choice(string.ascii_lowercase) for _ in range(length) ) print(get_random_letters(4)) # 👉️ wytq print(get_random_letters(8)) # 👉️ uxqdpkoe

我们使用生成器表达式迭代range长度为 N 的对象。

范围通常用于循环特定次数。

主程序
print(list(range(5))) # 👉️ [0, 1, 2, 3, 4] print(list(range(4))) # 👉️ [0, 1, 2, 3]
生成器表达式用于对每个元素执行某些操作或选择满足条件的元素子集。

在每次迭代中,我们选择一个随机字母并返回结果。

如果您使用random.choice()的 Python 版本比3.6.

发表评论