1119028320 发表于 2020-10-14 14:26:22

新手求助,到if语句的时候不管输入 1,2,3 都是直接跳到else,是因为什么

print("欢迎来到边缘世界")
role = input("朋友你叫什么名字")
print("你好",role)
print("你擅长什么")
weapon = input("1,战士 2,射手 3,法师")
print("这是你的装备")
ifweapon ==1:
    print("获得破败的重甲*1 短剑*1")
    ad + 10 and fangyu + 10
elif weapon ==2:
    print("获得破败的轻甲*1 短弓*1")
    ad + 8and fangyue + 5
elif weapon ==3:
    ap + 8 and angyue + 5
else:
    print("你在说什么?")

昨非 发表于 2020-10-14 14:32:21

print("欢迎来到边缘世界")
role = input("朋友你叫什么名字")
print("你好",role)
print("你擅长什么")
weapon = input("1,战士 2,射手 3,法师")
print("这是你的装备")
ifweapon =="1":                  #input输入的是字符串,所以123判断应该带引号以字符串的形式比较
    print("获得破败的重甲*1 短剑*1")
    ad + 10 and fangyu + 10
elif weapon =="2":
    print("获得破败的轻甲*1 短弓*1")
    ad + 8and fangyue + 5
elif weapon =="3":
    ap + 8 and angyue + 5
else:
    print("你在说什么?")

伪文青 发表于 2020-10-14 14:38:06

if判断条件的1,2,3需要加引号’’,然后等于3为啥什么也不打印呢?
ad + 10 and fangyu + 10这个是前面的代码里的值吗?应该放在print里拼接,不然没用
print("欢迎来到边缘世界")
role = input("朋友你叫什么名字")
print("你好",role)
print("你擅长什么")
weapon = input("1,战士 2,射手 3,法师")
print("这是你的装备")
ifweapon=='1':
    print("获得破败的重甲*1 短剑*1")
elif weapon=='2':
    print("获得破败的轻甲*1 短弓*1")   
elif weapon=='3':
    print("获得破败的白板*1 短弓*1")
else:
    print("你在说什么?")

昨非 发表于 2020-10-14 14:38:55

存在语法错误,ap,ad,fangyu 没有定义,且and不能这样使用,
部分拼写错误
已改正
print("欢迎来到边缘世界")
role = input("朋友你叫什么名字")
print("你好",role)
print("你擅长什么")
weapon = input("1,战士 2,射手 3,法师")
print("这是你的装备")
ad = 1
ap = 1
fang_yu = 1

ifweapon =="1":                  #input输入的是字符串,所以123判断应该带引号以字符串的形式比较
    print("获得破败的重甲*1 短剑*1")
    ad += 10
    fang_yu += 10
elif weapon =="2":
    print("获得破败的轻甲*1 短弓*1")
    ad += 8
    fang_yu += 5
elif weapon =="3":
    ap += 8
    fang_yu += 5
else:
    print("你在说什么?")

1119028320 发表于 2020-10-14 15:09:24

谢谢各位大佬赐教!!{:10_254:}
页: [1]
查看完整版本: 新手求助,到if语句的时候不管输入 1,2,3 都是直接跳到else,是因为什么