Python列表定稿器

Python列表定稿器,python,Python,我有以下清单: list_1 = [['Car1', 'gear1', 'brake1'],['Car2', 'gear2', 'brake2'],['Car3', 'gear3', 'brake3']] 我有一个代码,询问用户想要什么车,想要什么档位和刹车: user_car = input('What car would you like? ') user_gear = input('What gear would you like? ') user_brake = input('What

我有以下清单:

list_1 = [['Car1', 'gear1', 'brake1'],['Car2', 'gear2', 'brake2'],['Car3', 'gear3', 'brake3']]
我有一个代码,询问用户想要什么车,想要什么档位和刹车:

user_car = input('What car would you like? ')
user_gear = input('What gear would you like? ')
user_brake = input('What brake would you like? ')
每辆车都有特定的刹车/档位,如果一辆车没有刹车/档位,它就会撞车。例如,Car1有齿轮1和制动器1,而Car2有制动器2和齿轮2。假设Car1配备了制动器2和档位1,汽车将发生碰撞,因为Car1必须配备档位1和制动器。假设用户输入了Car1、gear2、brake3以回答程序已经提出的问题,您如何制作程序,以便在车辆发生碰撞时向用户发出警告,并告诉用户选择的车辆使用哪个制动器/档位

以下是我尝试使用的代码:

for x in list_1:
  if user_brake == list_l[0][x]:
    print('That is going to crash')

但这段代码不起作用。如何修复它?

我建议您使用
dict
保存它们,如:

list_1 = [['Car1', 'gear1', 'brake1'], ['Car2', 'gear2', 'brake2'], ['Car3', 'gear3', 'brake3']]

list_map = {
    car: {'gear': gear, 'brake': brake} for car, gear, brake in list_1
}

user_car = input('What car would you like? ')
user_gear = input('What gear would you like? ')
user_brake = input('What brake would you like? ')

pattern = list_map.get(user_car, None)
if pattern:
    if (user_gear, user_brake) != (pattern['gear'], pattern['brake']):
        print('That is going to crash, you need:', pattern['gear'], pattern['brake'])
    else:
        print('correct.')
else:
    print("Select an existing car")
这是你想要的吗

list_1 = [['Car1', 'gear1', 'brake1'],['Car2', 'gear2', 'brake2'],['Car3', 'gear3', 'brake3']]
user_car = input('What car would you like? ')
user_gear = input('What gear would you like? ')
user_brake = input('What brake would you like? ')
for i in list_1:
    if i[0]==user_car:
        if user_gear.capitalize()==i[1].capitalize() and user_brake.capitalize()==i[2].capitalize():
            print("Success")
        else:
            print("The car will fail and you should use ",i[1],"and",i[2])

到目前为止你试过什么?给我们看看你的代码!很抱歉我忘了。请给我一秒钟提示:列表1[0][0][1]给了你什么?列表_1[0][1][1]为您提供了什么?列表_1[0][2][1]为您提供了什么?你能用这个做什么?此外,你可以简单地检查用户_gear[-1]和用户_car[-1]之间是否相等。请特别重复介绍教程。堆栈溢出不是设计或教程资源。您需要学习Python“工具箱”和问题分析。这超出了堆栈溢出的范围。这是结果:('Car1','Car1')('Car将失败\n建议:','gear1','和''brake1')('Car2','Car1')('Car3','Car1')@Tigre是的,很抱歉我忘记删除我添加的测试打印语句。现在检查一下谢谢,但结果仍然是这样的('Car will fail\n Recommended:'、'gear1'、'brake1')。@Tigre对不起,你能告诉我你想要的预期输出是什么吗?只需说汽车会出故障,你应该使用gear1和brake1结果是一个列表:('that will will crash,you need:','gear1','brake1'))你知道如何修复它吗?@Tigre请不要使用
type('那会崩溃,你需要:',pattern['gear'],pattern['brake'])
来查看类型,
print(x,x,x)
只意味着打印所有类型,它只是试图传递参数。如果你不喜欢它,你也可以使用
+
来浓缩它们。(只需替换“+”)对不起,结果代码是什么?