我只想问一下,例如从Random.randint(a, b)
我只是想问一下如何随机字符串就像randint
一样,但这次是随机字符串。反正有吗?
#This program will play a little game
import random
a = ''
b = ''
c = ''
d = ''
e = ''
f = ''
print('Hi. Please enter your name in letters')
name = str(input())
print('Hi ' + name + '. I am going to play a little game. In this game you have to guess a specific name i am thinking right now.')
print('But do not worry. I am going to let you to enter 6 names and i will choose one of them.')
print('After that you have to answer the correct name that i am thinking right now')
print('Please enter the first name in letters')
name1 = str(input())
print('Please enter the second name in letters')
name2 = str(input())
print('Please enter the third name in letters')
name3 = str(input())
print('Please enter the fourth name in letters')
name4 = str(input())
print('Please enter the fifth name in letters')
name5 = str(input())
print('Please enter the sixth name in letters')
name6 = str(input())
name1 = a
name2 = b
name3 = c
name4 = d
name5 = e
name6 = f
print('Alright ' + name + ' . Thank you for entering the names.')
secretname = random.randint(a, f)
for i in range(2):
print('Now enter the name that i am thinking of.')
ans = str(input())
if ans != secretname:
print('Wrong. Guess another name')
if ans == secretname:
print('Good job ' + name)
else:
print('Wrong. The name i was thinking of was ' + secretname)
这是一个小游戏,要求你输入6个名字,然后游戏会猜出你输入的这6个数字之间的数字,但它总是给我一个错误。想用随机字符串做。
import random
print('Hi. Please enter your name in letters')
yourname = str(input())
print('Hi ' + yourname + '. I am going to play a little game. In this game you have to guess a specific name i am thinking right now.\nBut do not worry. I am going to let you to enter 6 names and i will choose one of them.\nAfter that you have to answer the correct name that i am thinking right now\nPlease enter the first name in letters')
name = ["", "", "", "", "", ""]
number = ["first", "second", "third", "fourth", "fifth", "sixth"]
def insert(n):
temp = name.copy()
name[n] = str(input("name " + str(n + 1) + ": "))
if name[n] in temp:
print("[error]: ---> This name exists yet, try again")
print(">>>", end='')
insert(n)
for n in range(6):
insert(n)
print('Please enter the ' + number[n] + ' name in letters')
print('Alright ' + yourname + ' . Thank you for entering the names.')
secretname = name[random.randint(0, 6)]
print("Soluzion: ", secretname)
print("-" * 10)
for i in range(2):
print('Now enter the name that i am thinking of.')
ans = str(input())
if ans != secretname:
print('Wrong. Guess another name')
if ans == secretname:
print('Good job ' + yourname)
else:
print('Wrong. The name i was thinking of was ' + secretname)
输出
Hi. Please enter your name in letters Gio Hi Gio. I am going to play a little game. In this game you have to guess a specific name i am thinking right now. But do not worry. I am going to let you to enter 6 names and i will choose one of them. After that you have to answer the correct name that i am thinking right now Please enter the first name in letters name 0: Giovanni Please enter the first name in letters name 1: Marta Please enter the second name in letters name 2: Giovanni [error]: ---> This name exists yet, try again >>>name 2: Giovanni [error]: ---> This name exists yet, try again >>>name 2: Carlo Please enter the third name in letters name 3: Mimmo Please enter the fourth name in letters name 4: June Please enter the fifth name in letters name 5: Caterina Please enter the sixth name in letters Alright Gio . Thank you for entering the names. Solution: Mimmo ---------- Now enter the name that i am thinking of. M Wrong. Guess another name Now enter the name that i am thinking of. Mimmo Good job Gio
答案 0 :(得分:6)
String HomeScreenResourcefilename = WebHomescreenResObj.getString("FileName");
int ProductTargetID = WebHomescreenResObj.getInt("ProductTargetID");
String WebURL_Part1 = context.getResources().getString(R.string.FileDownloadRootPath)+"/ExhibitorData/";
String WebURL_Part2 = GlobalVariables.tradeShowName+" - "+GlobalVariables.exhibitorName+"/HTMLHomeScreen/"+ProductTargetID +"/"+HomeScreenResourcefilename;
String WebURL = WebURL_Part1 + WebURL_Part2;
try {
URL url = new URL(WebURL);
File file = new File(context.getFilesDir(), HomeScreenResourcefilename);
URLConnection connection = url.openConnection();
connection.connect();
FileOutputStream fileOutput = new FileOutputStream(file);
//Stream used for reading the data from the internet
InputStream inputStream = connection.getInputStream();
byte[] buffer = new byte[1024];
int bufferLength = 0;
while ((bufferLength = inputStream.read(buffer)) > 0) {
fileOutput.write(buffer, 0, bufferLength);
}
fileOutput.close();
} catch (Exception e1) {
e1.printStackTrace();
LogE("error in 14 :"+e1);
}
<强>输出:强>
import string
import random
def random_string(length):
return ''.join(random.choice(string.ascii_letters) for m in xrange(length))
print random_string(10)
print random_string(5)
答案 1 :(得分:1)
你好M. Husnain,
<强> CHR(I)强>
返回表示Unicode代码点为整数i的字符的字符串。例如,chr(97)返回字符串'a',而chr(8364)返回字符串'€'。这是ord()的反转。
参数的有效范围是0到1,114,111(基数为16的0x10FFFF)。如果i超出该范围,则会引发ValueError。
请尝试以下代码,
#This program will play a little game
import random
a = ''
b = ''
c = ''
d = ''
e = ''
f = ''
print('Hi. Please enter your name in letters')
name = raw_input()
print('Hi ' + name + '. I am going to play a little game. In this game you have to guess a specific name i am thinking right now.')
print('But do not worry. I am going to let you to enter 6 names and i will choose one of them.')
print('After that you have to answer the correct name that i am thinking right now')
print('Please enter the first name in letters')
name1 = raw_input()
print('Please enter the second name in letters')
name2 = raw_input()
print('Please enter the third name in letters')
name3 = raw_input()
print('Please enter the fourth name in letters')
name4 = raw_input()
print('Please enter the fifth name in letters')
name5 = raw_input()
print('Please enter the sixth name in letters')
name6 = raw_input()
print('Alright ' + name + ' . Thank you for entering the names.')
lists1 = [name1,name2,name3,name4,name5,name6]
secretname = lists1[random.randint(0,len(lists1))]
for i in range(2):
print('Now enter the name that i am thinking of.')
ans = raw_input()
if ans != secretname:
print('Wrong. Guess another name')
if ans == secretname:
print('Good job ' + name)
else:
print('Wrong. The name i was thinking of was ' + secretname)
我希望我的回答很有帮助 如果有任何疑问请评论。
答案 2 :(得分:0)
您可以使用random.randint执行此操作:
my_string = "abcdefghijklmnopqrstuvwxyz"
index = random.randint(0,25)
letter = my_string[index]
你只需要循环使用字母
来构建字符串答案 3 :(得分:0)
试试这个,
import string
alpha = string.ascii_uppercase
num = string.digits
''.join(random.choice(alpha + num) for _ in range(5)) #number you want
答案 4 :(得分:0)
我建议使用包含输入名称的列表,而不是将名称保存到不同的变量中。它可能看起来像这样:
name_list = []
print('Please enter the first name in letters')
name_list.append(input())
print('Please enter the second name in letters')
name_list.append(input())
...
然后,您可以使用random.choice随机选择一个列表项,例如
import random
secretname = random.choice(name_list)
答案 5 :(得分:0)
对于您描述的特定情况,您只需创建一个包含您允许的所有字符的字符列表。然后你可以使用它来创建一个长度为X
的单词(替换为实际长度:
base_chars = [ 'a', 'b', 'c', '1', '2', '3' ]
word_length = 10 #change this to the desired word length
[random.choice(base_chars) for _ in range(word_length)]
您应首先确定要使用的字符类型。 例如,如果要使用0到127之间的ASCII字符,或者只是使用a-z和A-Z。还要考虑数字,空格等。因此,您应首先确定要随机选择的字符集。
如果您想在ASCII表中使用0到127范围,可以使用:
char = chr(random.randint(0, 127))
现在,要创建一个单词,首先应该确定它的大小。这也可以是随机的。例如,我们将随机选择一个单词的大小(范围有限):
rand_str = ""
for _ in range(10):
rand_str += chr(random.randint(0, 127))