在课堂上获得用户的输入

问题描述 投票:0回答:4
class Person:
  def __init__(self, name, age):
    self.name = name
    self.age = age

p1 = Person("John", 36)

print(p1.name)
print(p1.age)

如何要求用户输入姓名和年龄?

python class init
4个回答
2
投票

你可以在init中完成。如果在Python 2.7中,使用raw_input

class Person:
    def __init__(self):
        self.name = input('Name: ')
        self.age = int(input('Age: ')

p1 = Person()

print(p1.name)
print(p1.age)

或者如果你想把它放在外面

class Person:
    def __init__(self,name,age):
        self.name = name
        self.age = age


name = input('Name: ')
age = int(input('Age: '))

p1 = Person(name,age)

print(p1.name)
print(p1.age)

0
投票

This会有所帮助,但简单的答案是:

class Person:
  def __init__(self, name, age):
    self.name = name
    self.age = age

p1 = Person((raw_input("Enter Name"), int(raw_input("Enter Age"))))

print(p1.name)
print(p1.age)

0
投票

The input function用于获取用户的输入。您可以根据用户输入创建一个新的Person,如下所示:

p1 = Person(input("What is your name?"), int(input("What is your age?")))

这是一种在输入年龄时防止非整数用户输入的方法:

name = input("What is your name?")
try:
    age = int(input("What is your age?"))
except:
    print("Invalid input.")
    exit()
p1 = Person(name, age)

0
投票

您可以将input()用于Python 3:

name = input('Enter your name:')
age = input('Enter your age: ')

raw_input() for Python 2:

name = raw_input('Enter your name:')
age = raw_input('Enter your age: ')

请注意,在读取用户的输入时,您需要将age转换为int,因为您将获得字符串值。

age = int(age)

但请注意,如果用户提供无效的int,则会抛出错误

© www.soinside.com 2019 - 2024. All rights reserved.