如何优化嵌套的 if 语句?我不能在这里使用 &&
How do I optimize nested if statements? I cannot use && here
有没有更好的写法?我是 python 编码的新手,我想改进以下代码行。我在这里包含了几行代码,但原始代码比这长得多(多个 if 语句)。任何 guidance/feedback 都会有所帮助。
upperchar = #generate a char
pwdlist.append(upperchar)
if len(pwdlist) < length:
upperchar2 = #generate a char
pwdlist.append(upperchar2)
if len(pwdlist) < length:
lowerchar = #generate a char
pwdlist.append(lowerchar)
if len(pwdlist) < length:
lowerchar2 = #generate a char
pwdlist.append(lowerchar2)
if len(pwdlist) < length:
char3 = #generate a char
pwdlist.append(char3)
在这里发布我的第一个问题,如果您需要更多信息,请问我。
假设您总是以相同的方式生成一个角色,那么这就可行
pwdlist = []
while len(pwdlist) < length:
pwdlist.append(generate_char())
或者
pwdlist = [generate_char() for _ in range(length)]
然后你可以在这个生成函数中添加逻辑到return一些基于随机值的东西,例如
def generate_char():
from random import randrange
x = randrange(4)
if x == 0:
return 'value a-z'
elif x == 1:
return 'value A-Z'
elif x == 2:
return 'value 0-9'
elif x == 3:
return 'punctuation'
有没有更好的写法?我是 python 编码的新手,我想改进以下代码行。我在这里包含了几行代码,但原始代码比这长得多(多个 if 语句)。任何 guidance/feedback 都会有所帮助。
upperchar = #generate a char
pwdlist.append(upperchar)
if len(pwdlist) < length:
upperchar2 = #generate a char
pwdlist.append(upperchar2)
if len(pwdlist) < length:
lowerchar = #generate a char
pwdlist.append(lowerchar)
if len(pwdlist) < length:
lowerchar2 = #generate a char
pwdlist.append(lowerchar2)
if len(pwdlist) < length:
char3 = #generate a char
pwdlist.append(char3)
在这里发布我的第一个问题,如果您需要更多信息,请问我。
假设您总是以相同的方式生成一个角色,那么这就可行
pwdlist = []
while len(pwdlist) < length:
pwdlist.append(generate_char())
或者
pwdlist = [generate_char() for _ in range(length)]
然后你可以在这个生成函数中添加逻辑到return一些基于随机值的东西,例如
def generate_char():
from random import randrange
x = randrange(4)
if x == 0:
return 'value a-z'
elif x == 1:
return 'value A-Z'
elif x == 2:
return 'value 0-9'
elif x == 3:
return 'punctuation'