[英]Jython random string generation
所以,我需要創建一個方法,在jython中返回基於給定長度的隨機字符串。 如果我可以實現python random會很容易,但是我找不到辦法做到這一點,因為在每個隨機例子中我都發現使用java隨機類而不是python。 這是代碼位:
def getrstr (self, length):
from java.util import Random
import string
chars = string.letter + string.digits
str = ''
for i in range(1, (length+1)):
ind = random.nextInt(62) #there should be 62 charicters in chars string
c = #this is the part where i should get radom char from string using ind
str = str + c
return str
我正在嘗試根據包含我需要的所有字符的字符串創建一個字符串。 我只是不能找到一種方法來索引字符串中的字符串,就像我在C#中一樣。
任何想法如何做甚至可能導入python隨機類?
c = chars.charAt(ind);
JavaDocs指導方式。
試試這個,它適用於Jython:
def getrstr(self, length):
import random, string
seq = string.letters + string.digits
randomstr = []
for i in xrange(length):
randomstr.append(random.choice(seq))
return ''.join(randomstr)
請注意,我使用的是Jython的random
模塊,而不是Java的Random
類。 一個更短的版本,使用列表推導與模塊級導入(根據pep-8):
import random, string
def getrstr(self, length):
seq = string.letters + string.digits
return ''.join(random.choice(seq) for _ in xrange(length))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.