[英]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.