我在解决这个问题时遇到了一些麻烦。我有一个具有random.randint(alpha_low,alpha_high). alpha_low和alpha_high是使用函数 转换为数字值的字母ord。然后我使用该函数将它们转回,chr以便获得一个随机字母,并将其附加到final_list.问题是我想要列表的一半大写,一半小写。但现在,由于某种原因,我的代码没有打印一半一半,尽管我指定我希望一半保持不变,一半保持不变.upper()。
import random
def alpha_list(num_values, alpha_low, alpha_high):
final_list = []
for letter in range(num_values):
rando = (chr(random.randint(alpha_low, alpha_high)))
final_list.append(rando)
for i in range(len(final_list)):
if final_list[i] > final_list[int((len(final_list)/2)-1)]:
final_list[i] = final_list[i].upper()
else:
pass
return final_list
user_input_number = eval(input('please type an EVEN amount of letters you want: '))
user_input_first_letter = ord(input('please type the first letter of the limits(lower case): '))
user_input_last_letter = ord(input('please type the last letter of the limits(lower case): '))
print(alpha_list(user_input_number, user_input_first_letter, user_input_last_letter))
我尝试将列表分成 2 个列表,并将该列表大写,然后再次组合列表,但我觉得这不是最好的方法。
函数式编程
守着一只汪
绝地无双
阿波罗的战车
慕少森
相关分类