Форум сайта python.su
Как проверить при запуске скрипта из команд строки с параметрами (напр >python tre.py 1 2 3)
Что были введены числа.
Использую isdigit(), но для float чисел он не подходит.
Офлайн
s = '1.2'
try:
f = float(s)
except ValueError:
print('если s не число')
Офлайн
isinstance(<переменная>,<тип переменной>)
Офлайн
tobbхорошо, это будет работать только с флоат.s = '1.2'
try:
f = float(s)
except ValueError:
print('если s не число')
Офлайн
у вас же есть список, так пробегите по нему в цикле и проверьте на условия какие вам нужны.
Офлайн
Этот вопрос только что обсуждался http://python.su/forum/viewtopic.php?id=11065
Перед тем как проверять вам надо определится что такое число и что такое строка (например \u043c это строка или число? 0x11 - число? 22 это плавающее число или целое? Ну и так далее).
Возможная альтернатива - не командная строка - а конфиг файл там порядку будет побольше.
Для командной строки принято пользоваться модулями argparse или optparse
http://docs.python.org/library/argparse.html
Отредактировано (Апрель 17, 2011 10:32:33)
Офлайн
esalПример кода который я привел с целыми числами тоже работает. Вообще если у тебя сложности с обработкой параметром попробуй модуль argparse.
хорошо, это будет работать только с флоат.
А если вот тут sys.argv находятся числа 3 4.2 s
То есть int float и str
Каким образом получить цифры и указать на наличие str среди значений
Офлайн