help
Dave Angel
d at davea.name
Wed Jan 30 22:13:54 EST 2013
On 01/30/2013 04:16 PM, aramildaern at gmail.com wrote:
> Hi everyone! I don't mean to intrude, but ive heard great things about this group and ive stumped myself with my python code.
>
> heres my code:
> #! /usr/bin/python
>
> import sys
>
> global labelList
> labelList= dict()
>
> global counter
> counter = 0
>
> def execute(line):
> if line.find("::print") != -1:
> stripPrint = line.find("::print")
> startPrint = line.find('"', stripPrint)
> stopPrint = line.find('"', startPrint + 1)
> printSection = line[startPrint + 1 : stopPrint]
> print(printSection)
>
> if line.find("::label") != -1:
> stripLabel = line.find("::label")
> startLabel = line.find(' ', stripLabel)
> stopLabel = line.find('--', startLabel + 1)
> label = line[startLabel + 1 : stopLabel]
> line.strip("\r\n")
> labelList[label] = counter
>
> if len(sys.argv) < 2:
> print("error: no input files")
> print("compilation terminated")
>
> else:
> fileName = sys.argv[1]
> jadeFile = open(fileName, 'r')
>
> for line in jadeFile:
> counter = counter + 1
> execute(line)
>
> jadeFile.close()
>
> i = 0
>
> while i < len(labelList):
> print(labelList.keys()[i], ":", labelList.values()[i])
> i = i + 1
>
>
> and its giving me a bunch of errors thanks for the help in advance!
>
davea at think2:~/temppython$ python aram.py
error: no input files
compilation terminated
These messages are triggered by sys.argv being less than 2. Cure is to
pass some string as the first argument on the command line.
Fixed that:
davea at think2:~/temppython$ ./aram.py myfile.txt
Traceback (most recent call last):
File "./aram.py", line 33, in <module>
jadeFile = open(fileName, 'r')
IOError: [Errno 2] No such file or directory: 'myfile.txt'
(notice that I pasted the full traceback into this message.)
Problem is that the program is treating that parameter as a filename,
and I don't have a file by that filename.
davea at think2:~/temppython$ ./aram.py aram.py
) != -1:
)
(' stripLabel = line.find("::label")', ':', 20)
('!= -1:', ':', 19)
Worked perfectly. Of course, nobody has said what it's supposed to do.
So anything that doesn't display an error must be okay.
How about describing what version of Python this is intended for, how
you ran it, and what errors you're getting. Don't paraphrase, don't
summarize (lots of errors ???!), just copy/paste.
And if it's appropriate, show a sample data file for it to open, not
attached, but pasted into your email message.
--
DaveA
More information about the Python-list
mailing list