Динамически читать из командной строки и создавать объекты - PullRequest
0 голосов
/ 14 февраля 2012

Я хочу динамически читать из командной строки и преобразовать ввод в правильный формат.Поэтому я должен определить требуемый тип и создать экземпляр такого объекта.Из-за ввода str Я должен преобразовать вход правильно.Вот пример того, что я хочу сделать в псевдокоде.Если TypeOf терпит неудачу, это должно вызвать исключение, может быть ValueError.

required_foo_type = 3.0
foo_input = Input("Enter foo: ")
bar = new TypeOf(required_foo_type, foo_input)

Как я могу это сделать в python?

Ответы [ 2 ]

2 голосов
/ 14 февраля 2012
foo_input = raw_input("Enter foo: ")

required_foo_type = float # aka type(3.0)
try:
     bar = required_foo_type(foo_input)
except TypeError:
     print "wrong input"
0 голосов
/ 14 февраля 2012

Хорошо, что вы сначала запускаете учебник по Python. Это даст вам быстрый старт. Как этот: Python Tutorial Особенно читайте главу 3 вперед ...

Йохен Ритцель дал вам очень хороший ответ. :) Но если вы чувствуете, что это слишком заранее. Вот легкий.

a = input("Enter a number: ") # return integer
b = raw_input("Enter any text") # return string
c = int(raw_input("Enter number: ")) # return string but converted to integer
d = float(raw_input("Enter float: ")) # return string but converted to float
...