English 中文(简体)
粉碎:在分离时如何获得正确的清单?
原标题:Python: how to get correct list when split?
  • 时间:2012-05-05 20:56:45
  •  标签:
  • python

在测试中,我有两条刑期。

The heart was made to be broken.
There is no surprise more magical than the surprise of being loved.

该法典:

import re
file = open( /test.txt , r )#specify file to open
data = file.readlines()
file.close()
for line in data:
    line_split = re.split(r [ 	

, ]+ ,line)
    print line_split

Results from the codes:

[ The ,  heart ,  was ,  made ,  to ,  be ,  broken. ,   ]
[ There ,  is ,  no ,  surprise ,  more ,  magical ,  than ,  the ,  surprise ,  of ,  being ,  loved. ]

如何只字面打印? (见第一句) 具体结果:

[ The ,  heart ,  was ,  made ,  to ,  be ,  broken. ]
[ There ,  is ,  no ,  surprise ,  more ,  magical ,  than ,  the ,  surprise ,  of ,  being ,  loved. ]

任何建议?

最佳回答

您不使用<代码>split与划界者匹配,而是使用<代码>findall<>/code>与否定的定期表述相匹配,以便与你想要保持的部件保持一致:

line_split = re.findall(r [^ 	

., ]+ ,line)

见网站:ideone

问题回答

为了确定其他几个变化,进一步解释了:

import re

with open("test.txt", "r") as file:
    for line in file:
        line_split = filter(bool, re.split(r [ 	

, ]+ , line))
        print(line_split)

在此,我们使用,删除结果中的任何空示。

Note my use of

words = re.compile(r"[w ]+").findall(yourString)

解散

>>> yourString = "Mary s lamb was white as snow."
["Mary s",  lamb ,  was ,  white ,  as ,  snow ]

If you really do want periods, you can add those as [w .]

In [2]: with open( test.txt , r ) as f:
   ...:     lines = f.readlines()
   ...:

In [3]: words = [l.split() for l in lines]

In [4]: words
Out[4]:
[[ The ,  heart ,  was ,  made ,  to ,  be ,  broken. ],
 [ There ,
   is ,
   no ,
   surprise ,
   more ,
   magical ,
   than ,
   the ,
   surprise ,
   of ,
   being ,
   loved. ]]




相关问题
Can Django models use MySQL functions?

Is there a way to force Django models to pass a field to a MySQL function every time the model data is read or loaded? To clarify what I mean in SQL, I want the Django model to produce something like ...

An enterprise scheduler for python (like quartz)

I am looking for an enterprise tasks scheduler for python, like quartz is for Java. Requirements: Persistent: if the process restarts or the machine restarts, then all the jobs must stay there and ...

How to remove unique, then duplicate dictionaries in a list?

Given the following list that contains some duplicate and some unique dictionaries, what is the best method to remove unique dictionaries first, then reduce the duplicate dictionaries to single ...

What is suggested seed value to use with random.seed()?

Simple enough question: I m using python random module to generate random integers. I want to know what is the suggested value to use with the random.seed() function? Currently I am letting this ...

How can I make the PyDev editor selectively ignore errors?

I m using PyDev under Eclipse to write some Jython code. I ve got numerous instances where I need to do something like this: import com.work.project.component.client.Interface.ISubInterface as ...

How do I profile `paster serve` s startup time?

Python s paster serve app.ini is taking longer than I would like to be ready for the first request. I know how to profile requests with middleware, but how do I profile the initialization time? I ...

Pragmatically adding give-aways/freebies to an online store

Our business currently has an online store and recently we ve been offering free specials to our customers. Right now, we simply display the special and give the buyer a notice stating we will add the ...

Converting Dictionary to List? [duplicate]

I m trying to convert a Python dictionary into a Python list, in order to perform some calculations. #My dictionary dict = {} dict[ Capital ]="London" dict[ Food ]="Fish&Chips" dict[ 2012 ]="...