Sometimes its convenient to use the DATA directory, which will be
packaged with the worksheet if you save it (as a .sws file).  So for
example you could copy the file to the DATA directory doing something
like:

os.system('cp /full/path/to/list2.txt ' + DATA + 'list2.txt')

and then

f = open(DATA + 'list2.txt')

should work, and would still work if you saved a worksheet copy and
moved it to another computer.

I am tempted to open a ticket in trac for some sort of read_csv
command, which might behave like the following (NOTE: this is just
wishful thinking at this point):

data_list = read_csv('my_file.csv') # data_list would be a list of
lists of row data, converted to numerical types if possible
data_list = read_csv('my_file.csv', seperator = '\t')  #split lines by
a tab character instead
data_list = read_csv('my_file.csv', fields = [int,int,string])
#perhaps useful to have more explicit field conversions

Does something like that already exist?  Seems very common as a task.
Of course its not that hard to do ad-hoc, but it would make things
more user-friendly for lots of people I think.

Marshall Hampton

On Feb 5, 10:10 pm, Fall In Love with Sage <[email protected]>
wrote:
> Thank you!
> It works now :)
>
> On Feb 5, 9:54 pm, David Joyner <[email protected]> wrote:
>
> > On Thu, Feb 5, 2009 at 2:48 PM, Fall In Love with Sage
>
> > <[email protected]> wrote:
>
> > > Thank you for your response!
>
> > > The problem is now in the following codes:
> > > 1.
> > >   f = open("list2.txt")
> > >   l1 = f.readline()
> > >   ls1 = l1.split("  ")
> > >   l1
>
> > > gives:
> > >   Traceback (click to the left for traceback)
> > >   ...
> > >   IOError: [Errno 2] No such file or directory: 'list2.txt'
>
> > > Similarly, the eval function, eval(ls1), in (1) and the following code
> > > (2) causes the previous error.
>
> > > 2.
> > >   f = open('list2.txt')
> > >   varList = [x.split(' // ') for x in f.readlines()]
>
> > > I have the file list2.txt at SageRoot.
>
> > Does it help to give it the abs path?
>
> > f = open("/full/path/to/list2.txt")
>
> > > On Feb 5, 9:28 pm, David Joyner <[email protected]> wrote:
> > >> Possibly I'm not understanding your English.
> > >> Python can read in any text file, for example csv.
> > >> So, the answer to your question seems to be in the
> > >> thread you cited.
>
> > >> Also, if you want to know which directory Sageroot is,
> > >> type SAGE_ROOT. For example:
>
> > >> sage: SAGE_ROOT
> > >> '/home/wdj/sagefiles/sage-3.3.alpha1'
>
> > >> Hope this helps.
>
> > >> On Thu, Feb 5, 2009 at 2:11 PM, Fall In Love with Sage
>
> > >> <[email protected]> wrote:
>
> > >> > My .txt/csv -file looks like in Vim:
> > >> > 1,4
> > >> > 2,5
> > >> > 3,6
> > >> > I can have both filetypes. I am not sure, which one Sage supports.
>
> > >> > Open two columns in Sage:
> > >> > - I know that the file needs be at Sageroot. My Sage is installed at ~/
> > >> > apps/Sage in Mac.
> > >> > Where in ~/apps/Sage do I need to put the file?
>
> > >> > This question is based on the following discussions:
> > >> > 1.http://groups.google.com/group/sage-support/browse_thread/thread/4600...
> > >> > 2.http://stackoverflow.com/questions/494116/how-can-you-move-a-list-fro...
--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to