Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 21, 2012 17:25:11

AlexSSpirit
От:
Зарегистрирован: 2012-03-07
Сообщения: 23
Репутация: +  0  -
Профиль   Отправить e-mail  

Работа в командной строке

Не получается написать код, с помощью которого можно написав название программы и значение в командной строке, получить ответ.

import sys
C = float(sys.argv[1])
F = 9.0*C/5 + 32
print F

по идее должно получаться так:
c2f.py 21
 69.8

В статье, по котрой я учусь, код написан на версии 2** , а я на версии 3** сижу.
Наверное в этом и проблема. Ведь вроде всё должно работать, а у меня при вызове пишет всякую ерунду, потип: переменная не найдена/неправильный синтаксис и т.п.

Пожалуйста подскажите как отредактировать код, чтоб в командной строке, можно было вызвав программу и написав значение переменной - получить ответ.



Отредактировано AlexSSpirit (Июнь 21, 2012 17:26:16)

Офлайн

#2 Июнь 21, 2012 17:35:47

lorien
От:
Зарегистрирован: 2006-08-20
Сообщения: 755
Репутация: +  37  -
Профиль  

Работа в командной строке

> Наверное в этом и проблема. Ведь вроде всё должно работать, а у меня при вызове пишет всякую ерунду, потип: переменная не найдена/неправильный синтаксис и т.п.

Вот эту ерунду дословно и нужно копировать в сообщение. Мы же не телепаты. Что значит и т.п. Каждый раз разное пишет? :)

Офлайн

#3 Июнь 21, 2012 17:36:08

fata1ex
От:
Зарегистрирован: 2009-07-11
Сообщения: 732
Репутация: +  52  -
Профиль   Отправить e-mail  

Работа в командной строке

Например:

import argparse
 
 
parser = argparse.ArgumentParser()
parser.add_argument(dest='param', type=int)
args = parser.parse_args()
 
print args.param ** 2

[18:34] home:~/dev python sqr.py 2
4
[18:35] home:~/dev python sqr.py 10
100

argparse



Отредактировано fata1ex (Июнь 21, 2012 17:36:18)

Офлайн

#4 Июнь 21, 2012 17:41:55

Singularity
Зарегистрирован: 2011-07-28
Сообщения: 1387
Репутация: +  75  -
Профиль   Отправить e-mail  

Работа в командной строке

" 2 , а я на версии 3 сижу" Там print(F) "C = float(sys.argv[1])" И в python листы с нуля индексируются, так что надо sys.argv[0] . Хотя за Python 3 не знаю

Отредактировано Singularity (Июнь 21, 2012 17:45:59)

Офлайн

#5 Июнь 21, 2012 18:09:05

AlexSSpirit
От:
Зарегистрирован: 2012-03-07
Сообщения: 23
Репутация: +  0  -
Профиль   Отправить e-mail  

Работа в командной строке

lorien
Вот эту ерунду дословно и нужно копировать в сообщение. Мы же не телепаты. Что значит и т.п. Каждый раз разное пишет? :)

Пошагово опишу:
1)создаю прогу
import sys
C = float(sys.argv[1])
F = 9.0*C/5 + 32
print (F)

2)захожу в командную строку Python и набираю:
prog21.py 12
мне выдаёт : SyntaxError: invalid syntax (Указывая на переменную 12)

Я вот думаю, можт там какойто путь к файлу пробить надо в командной строке?!)
блин в викиверсити этому не учат(



Отредактировано AlexSSpirit (Июнь 21, 2012 18:19:00)

Офлайн

#6 Июнь 21, 2012 18:15:34

fata1ex
От:
Зарегистрирован: 2009-07-11
Сообщения: 732
Репутация: +  52  -
Профиль   Отправить e-mail  

Работа в командной строке

AlexSSpirit
lorien
Вот эту ерунду дословно и нужно копировать в сообщение

AlexSSpirit
мне выдаёт : SyntaxError: invalid syntax указывая на на переменную

?



Офлайн

#7 Июнь 21, 2012 18:19:10

reclosedev
От: Н.Новгород
Зарегистрирован: 2012-03-29
Сообщения: 870
Репутация: +  173  -
Профиль   Отправить e-mail  

Работа в командной строке

AlexSSpirit
захожу в командную строку Python и набираю:
У меня единственное предположение, что вы набираете в командной строке python, заходите в интерпритатор, который выводит что-то вроде:
Python 3.2.2 (default, Sep  4 2011, 09:51:08) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
и там вводите
prog21.py 12
?
Если да, то это неправильно.
Выше уже fata1ex показывал как надо.
python prog21.py 12


Singularity
И в python листы с нуля индексируются, так что надо sys.argv
В sys.argv[0] имя скрипта, аргументы с элемента 1 начинаются.

сдаюсь, BBCode победил.

Отредактировано reclosedev (Июнь 21, 2012 18:30:55)

Офлайн

#8 Июнь 21, 2012 18:34:50

AlexSSpirit
От:
Зарегистрирован: 2012-03-07
Сообщения: 23
Репутация: +  0  -
Профиль   Отправить e-mail  

Работа в командной строке

Сам нашёл в чём проблема, реально просто путь не проложил.
В cmd PATH C:\Python32\
program21.py 40
104.0 (-выводит)


Но в любом случае всем спасибо ребят) я не описал нормально суть проблемы, отсюда и не понимание



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version