2005年09月15日 星期四 04:10
data.txt X s11 s12 s22 0.00000000E+000 6.04698870E+010 -5.32921631E+010 9.52406671E+010 0.00000000E+000 NoValue 6.09591665E+010 NoValue 0.00000000E+000 NoValue -2.99157750E+010 NoValue 0.00000000E+000 NoValue 3.67781274E+010 NoValue 4.88667341E-004 3.86049147E+010 6.78774682E+009 3.21935503E+010 9.40300233E-004 2.70205092E+010 3.81452723E+009 3.04842240E+010 ÈçºÎ´Ódata.txt¶ÁÈëÕâЩÊý¾Ý ʹ֮³ÉΪÊý¾ÝÁбídata ʹµÃdataµÄÐкÍÁÐÓëÔÀ´Êý¾Ý±£³ÖÒ»Öµĸñʽ thanks
2005年09月15日 星期四 09:22
在 05-9-15,Leon Tang<leonmaillist at sohu.com> 写道: > data.txt > > X s11 s12 s22 > > 0.00000000E+000 6.04698870E+010 -5.32921631E+010 > 9.52406671E+010 > 0.00000000E+000 NoValue 6.09591665E+010 NoValue > 0.00000000E+000 NoValue -2.99157750E+010 > NoValue > 0.00000000E+000 NoValue 3.67781274E+010 NoValue > 4.88667341E-004 3.86049147E+010 6.78774682E+009 3.21935503E+010 > 9.40300233E-004 2.70205092E+010 3.81452723E+009 3.04842240E+010 > > 如何从data.txt读入这些数据 > 使之成为数据列表data 读入数据很简单,从上面可以看出一行就是一条记录,每条记录的字段以空白符分隔,因此可以这样: data = [] for line in file('data.txt'): line = line.strip() #过滤前后的空格和回车 data.append(line.split()) #使用字符串的split方法,按空白进行拆分 这样数据就读出来了。 > 使得data的行和列与原来数据保持一致的格式 > thanks > 这个就不太明白你的意思了。 -- I like python! My Donews Blog: http://www.donews.net/limodou
2005年09月15日 星期四 09:36
呵呵,谢谢你 我用line.split() 一开始没注意到split可以缺省无参数的,开始就是用split(' ')结果不好 ----- Original Message ----- From: "limodou" <limodou at gmail.com> To: <python-chinese at lists.python.cn> Sent: Thursday, September 15, 2005 9:22 AM Subject: Re: [python-chinese] 从文本读入数据的格式问题求教 >在 05-9-15,Leon Tang<leonmaillist at sohu.com> 写道: >> data.txt >> >> X s11 s12 s22 >> >> 0.00000000E+000 6.04698870E+010 -5.32921631E+010 >> 9.52406671E+010 >> 0.00000000E+000 NoValue 6.09591665E+010 NoValue >> 0.00000000E+000 NoValue -2.99157750E+010 >> NoValue >> 0.00000000E+000 NoValue 3.67781274E+010 NoValue >> 4.88667341E-004 3.86049147E+010 6.78774682E+009 3.21935503E+010 >> 9.40300233E-004 2.70205092E+010 3.81452723E+009 3.04842240E+010 >> >> 如何从data.txt读入这些数据 >> 使之成为数据列表data > > 读入数据很简单,从上面可以看出一行就是一条记录,每条记录的字段以空白符分隔,因此可以这样: > > data = [] > for line in file('data.txt'): > line = line.strip() #过滤前后的空格和回车 > data.append(line.split()) #使用字符串的split方法,按空白进行拆分 > > 这样数据就读出来了。 > >> 使得data的行和列与原来数据保持一致的格式 >> thanks >> > > 这个就不太明白你的意思了。 > > > -- > I like python! > My Donews Blog: http://www.donews.net/limodou > -------------------------------------------------------------------------------- > _______________________________________________ > python-chinese list > python-chinese at lists.python.cn > http://python.cn/mailman/listinfo/python-chinese >
2005年09月15日 星期四 09:47
line.strip() ÊÇ·ñ±ØÒªÄØ£¿ ÒòΪsplit()Ò²ÊÇ·Ö¸î¿Õ¸ñ£¬¶øÇÒÒ²ÊǹýÂËÁËÇ°ºó¿Õ¸ñµÄ "limodou" <limodou at gmail.com> дÈëÏûÏ¢ÐÂÎÅ:505f13c0509141822751fa04c at mail.gmail.com... >ÔÚ 05-9-15£¬Leon Tang<leonmaillist at sohu.com> дµÀ£º >> data.txt >> >> X s11 s12 >> s22 >> >> 0.00000000E+000 6.04698870E+010 -5.32921631E+010 >> 9.52406671E+010 >> 0.00000000E+000 NoValue 6.09591665E+010 >> NoValue >> 0.00000000E+000 NoValue -2.99157750E+010 >> NoValue >> 0.00000000E+000 NoValue 3.67781274E+010 >> NoValue >> 4.88667341E-004 3.86049147E+010 6.78774682E+009 >> 3.21935503E+010 >> 9.40300233E-004 2.70205092E+010 3.81452723E+009 >> 3.04842240E+010 >> >> ÈçºÎ´Ódata.txt¶ÁÈëÕâЩÊý¾Ý >> ʹ֮³ÉΪÊý¾ÝÁбídata > > ¶ÁÈëÊý¾ÝºÜ¼òµ¥£¬´ÓÉÏÃæ¿ÉÒÔ¿´³öÒ»ÐоÍÊÇÒ»Ìõ¼Ç¼£¬Ã¿Ìõ¼Ç¼µÄ×Ö¶ÎÒÔ¿Õ°×·û·Ö¸ô£¬Òò´Ë¿ÉÒÔÕâÑù£º > > data = [] > for line in file('data.txt'): > line = line.strip() #¹ýÂËÇ°ºóµÄ¿Õ¸ñºÍ»Ø³µ > data.append(line.split()) #ʹÓÃ×Ö·û´®µÄsplit·½·¨£¬°´¿Õ°×½øÐвð·Ö > > ÕâÑùÊý¾Ý¾Í¶Á³öÀ´ÁË¡£ > >> ʹµÃdataµÄÐкÍÁÐÓëÔÀ´Êý¾Ý±£³ÖÒ»Öµĸñʽ >> thanks >> > > Õâ¸ö¾Í²»Ì«Ã÷°×ÄãµÄÒâ˼ÁË¡£ > > > -- > I like python! > My Donews Blog: http://www.donews.net/limodou > -------------------------------------------------------------------------------- >
2005年09月15日 星期四 09:52
在 05-9-15,Leon Tang<leonmaillist at sohu.com> 写道: > line.strip() 是否必要呢? > 因为split()也是分割空格,而且也是过滤了前后空格的 > 可以测试一下,如果不会在最后多一个空串就可以不用。这样只是一种保险的做法。 -- I like python! My Donews Blog: http://www.donews.net/limodou
Zeuux © 2025
京ICP备05028076号