【问题标题】:Can someone please help me with my random code generator? [closed]有人可以帮我使用我的随机代码生成器吗? [关闭]
【发布时间】:2021-12-10 06:40:40
【问题描述】:

所以我正在尝试制作一个随机代码生成器。像这样 [x1gG4...] 有 16 个代码位置。但是,如果我运行该程序,它会给我一个错误。 有人可以帮我吗?

#imports
import random
import time

#random string
str_var = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"

#-----------Code
print "test"
print random.choice(str_var)

#just temporary
time.sleep(999)

【问题讨论】:

  • 你得到哪个错误?
  • 您的 print 语句是 Python 2 语法。让它成为一个函数调用:print("test").

标签: python code-generation


【解决方案1】:

你需要从str_var替换16次:

"".join([random.choice(str_var) for _ in range(16)])

【讨论】:

    【解决方案2】:
    random.choice(str_var)
    

    这将为您提供您给定的字符串中的单个随机字符。 结果可能是'F'或'g'等等...... 所以如果你想要长度为 16 的字符串,你可以迭代 16 次。

     result=""
     for i in range(16):
        result+=random.choice(str_var)
    

    【讨论】:

      【解决方案3】:

      你可以简单地做。

      import random
      x = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"
      print(''.join(random.sample(x, k=16)))
      

      【讨论】:

      • 我如何做一个循环+我如何在代码前添加文本(我复制了你的系统)
      • 你是这个意思。 text ='some_random_string' 然后你可以做 print(text.join(random.sample(x, k=16)))
      【解决方案4】:

      取一个空字符串变量。运行循环 16 次并使用随机模块,使用 random.choice()str_var 中选择随机字符并将其添加到空字符串中。你的代码:

      import random
      str_var = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"
      a=""
      for i in range(16):
          x=random.choice(str_var)    #taking random character from str_var
          a+=x
      
      print(a)
      

      【讨论】:

        【解决方案5】:
        import random
        import string
        rand_str = "".join(random.choice(string.ascii_letters) for _ in range(16))
        

        【讨论】:

          猜你喜欢
          • 2022-06-14
          • 2021-01-04
          • 1970-01-01
          • 1970-01-01
          • 2022-07-07
          • 1970-01-01
          • 1970-01-01
          • 2022-06-11
          • 2017-01-07
          相关资源
          最近更新 更多