Запрашиваемая для ввода пользователем между двумя полами, используя какое-то время l oop и хранится в переменной? - PullRequest
0 голосов
/ 20 февраля 2020

Хотите создать небольшую программу, которая может задать пользователю вопрос. Вы хотите, чтобы ваш персонаж был мужчиной или женщиной? И вывести результат. Однако, как вы можете сказать, результаты плохие с моей стороны.

Может ли кто-нибудь помочь мне исправить этот беспорядок, поскольку я чувствую, что усложнил его.

Просто некоторые общие правила, которые должна иметь программа:

  • Он должен принимать как «мужской», так и «мужской» в качестве входных данных и наоборот для женских
  • Пользовательский ввод должен быть сохранен в созданной переменной.
  • Если пользователь введите что-нибудь еще, кроме: «женский», «женский», «мужской» или «мужской», они должны повторить вопрос (вот почему я задаю некоторое время l oop)

Это странно, но для меня это обычно должно быть просто, но я немного напутал.

Любая помощь будет оценена :)

gender = None

gender = str(input("Enter your Gender1: "))
while gender != 'Male' or 'male' or 'female' or 'Female':
    gender = input("Enter your Gender2: ") 
if gender in ['Male', 'male']:
    print("You have chosen Male")
if gender in ['Female', 'female']:
    print("You have chosen Female")

print(gender) 

Я не против Весь метод меняется, когда можно использовать такие опции, как:

  • Нажмите 1 для «Мужской» или 2 для «Женский»

Может помочь:)

Ответы [ 4 ]

2 голосов
/ 20 февраля 2020

Вместо сравнения дважды, например. пол! = 'мужской' или пол! = 'мужской' используйте ниже.

while gender.lower() != 'male' ...
0 голосов
/ 20 февраля 2020

С python 3.8 вы можете сделать:

def ask_gender() -> str:
  return str(input("Enter your Gender: ")).lower()

valid_genders = ["male", "female"]
gender = None

gender = ask_gender()
while gender not in valid_genders:
  print("Unknown gender, try again")
  gender = ask_gender()

print(f"You have chosen {gender}")
0 голосов
/ 20 февраля 2020
x=gender.lower()
if x="male":
    print "U re Male"
else if x="famale":
    print "U re Famale"
else:
    print "You enter Wrong gender"
0 голосов
/ 20 февраля 2020

Вам нужно сделать:

while gender != 'Male' or gender != 'male' or gender != 'female' or gender != 'Female':

Поскольку в вашем случае 'male' оценивается как False

...