我需要将列表的内容与给定的模式匹配,并形成另一个列表,除了匹配之外,它将包含所有内容.意思是,我正在尝试制作排除列表.
现在有一个模式匹配,很容易.但是对于更多那个,它变得棘手.
让我们看一个例子:
Lmain=[arc123, arc234,xyz111,xyz222,ppp999,ppp888]
for count in range(len[Lmain]):
if Pattern matches Lmain[i]:
Pass
else:result.append(Lmain[i])
Run Code Online (Sandbox Code Playgroud)
现在让我们说pattern = arc,我的结果就是
result = [xyz111,xyz222,ppp999,ppp888]
Run Code Online (Sandbox Code Playgroud)
这只是一个逻辑,我将使用常规expr来查找匹配.
现在,如果我们有2个模式,那么在循环中使用上面的逻辑:
Pattern=['arc','xyz']
for pat in Pattern:
if pat matches Lmain[i]:
Pass
else:result.append(Lmain[i])
Run Code Online (Sandbox Code Playgroud)
这会给我们错误的结果
result = [xyz111,xyz222,ppp999,ppp888,arc123,arc234,ppp999,ppp888]
Run Code Online (Sandbox Code Playgroud)
所以,你可以看到上面的逻辑不会起作用.
我的计划:
首先,我们找到第一个Pattern的排除列表,它将给出结果:
result = [xyz111,xyz222,ppp999,ppp888]
Run Code Online (Sandbox Code Playgroud)
对于第二种模式,我们需要查看上述结果.
if Pattern matches Result[i]:
Pass
else:result_final.append(Result[i])
Run Code Online (Sandbox Code Playgroud)
我认为我们需要使用Recursion来实现上面的逻辑.现在我们该怎么做?此外,我们不知道用户将要进入的模式数量.它可以是一个或多个.
任何人都有任何逻辑思想,请分享.
fin = open('/abc/xyz/test.txt', 'a+')
def lst():
return fin.read().splitlines()
print lst()
def foo(in):
print lst()
fin.write(str(len(lst()) + in)
fin.flush()
Run Code Online (Sandbox Code Playgroud)
在上面的代码中,当print lst()调用外部函数时,它给出了正确的结果,但是当试图在函数中调用相同的函数时,foo()它产生空列表,其len(lst())值为0.我也尝试通过注释最后两行但仍返回空列表.上面的代码有什么问题?
背景
我正在尝试阅读和分析来自网页的内容,重点是页面的主要内容 - 没有菜单,侧边栏,脚本和其他HTML混乱.
编辑:我正在寻找一个实际上通过内容筛选的图书馆,并且仅向我提供页面中的"相关"文本(即,对于此页面,单词"review","chat","meta","about" ,顶部栏中的"faq" 将不会显示,以及"许可下的用户贡献".
那么,您是否知道用于从网站中提取内容的任何其他稳定的.Net库?
我一直在研究python很长一段时间,最近我决定开始学习Web开发方面的事情.我有PHP和PHP框架的经验,以及ruby,其中:
如何使用flask AND webapp2实现此目的?
我完整地阅读了文档和教程,但它让我非常困惑.我只想要一个文件,其中所有路由和它们应该如何处理都被设置,然后每个路由请求由它自己的模型(python文件)处理.
所有示例都会导致单个文件应用程序.
非常感谢你,真的.请以一种简单的方式亲切地教导.
我试图f = open('filename')在python中执行.但是,我不知道文件的全名.我所知道的是它以's12'开头并以'.ka'结尾,我知道它所在的文件夹,我知道它是该文件夹中唯一以"s12"和".ka开头和结尾的文件".有没有办法做到这一点?
我有2个字典,其中包含相同的键但值对不同.让dictA和dictB代表两个有问题的词典.
dictA = {'key1':'Joe', 'key2':'Bob'}
dictB = {'key1':'Smith', 'key2':'Johnson'}
Run Code Online (Sandbox Code Playgroud)
目前,我正在通过嵌套的if语句创建一个基于常见键的新字典.在这样做时,共享密钥的值包含在新字典中的列表中.见下面的完成:
dictAB = {} # Create a new dictionary
# Create a list container for dictionary values
for key in dictA.keys():
dictAB[key] = []
# Iterate through keys in both dictionaries
# Find matching keys and append the respective values to the list container
for key, value in dictA.iteritems():
for key2, value2 in dictB.iteritems():
if key == key2:
dictAB[key].append(value)
dictAB[key].append(value2)
else:
pass
Run Code Online (Sandbox Code Playgroud)
如何使用python字典理解将其变成更干净的结构?
我正在努力完成看似简单的任务,但我似乎无法弄明白.我是一名Python新秀.
这是我的任务:
我有一个文本文件,其中包含一个数字列表,每个都在一个单独的行上...
100101
100201
100301
100401
100501
100601
100701
100801
100901
101001
Run Code Online (Sandbox Code Playgroud)
我想要做的是从文本文件中读取并为包含该行的文件中的每一行写一个新的文本文件,并使用该行命名...
100101.txt
contains one line of text "100101"
100201.txt
contains one line of text "100201"
etc...
Run Code Online (Sandbox Code Playgroud)
希望这有道理......谢谢!
hjnathan
我正在编写一个编程语言,我需要将一个对象(如javascript中的var)转换为它应该的变量类型.例如:
if(object == variabletypes.string)
{
//convert object to string
}
else if(object ==variabletypes.int)
{
//convert to integer
}
Run Code Online (Sandbox Code Playgroud)
感谢您的时间,任何帮助将不胜感激.
问题的关键是
ret=subprocess.call(shlex.split(cmd))
cmd = /usr/share/java -cp pig-hadoop-conf-Simpsons:lib/pig-0.8.1-cdh3u1-core.jar:lib/hadoop-core-0.20.2-cdh3u1.jar org.apache.pig.Main -param func=cat -param from =foo.txt -x mapreduce fsFunc.pig
Run Code Online (Sandbox Code Playgroud)
错误是.
File "./run_pig.py", line 157, in process
ret=subprocess.call(shlex.split(cmd))
File "/usr/lib/python2.7/subprocess.py", line 493, in call
return Popen(*popenargs, **kwargs).wait()
File "/usr/lib/python2.7/subprocess.py", line 679, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1249, in _execute_child
raise child_exception
OSError: [Errno 13] Permission denied
Run Code Online (Sandbox Code Playgroud)
如果需要更多信息,请告诉我.任何帮助表示赞赏.谢谢.
我想知道如何仅为特定文件夹部署我的Google App Engine项目?
例如,如果我的项目源文件夹是"src",并且在此src文件夹中有许多子文件夹.说,我有css,app,images和js文件夹,但我想只将css,app和images文件夹部署到GAE,我希望GAE在部署期间忽略js文件夹,有没有办法这样做在app.yaml文件中设置?
谢谢!
乔尔
python ×7
.net ×1
apache-pig ×1
bash ×1
deployment ×1
flask ×1
hadoop ×1
html ×1
int ×1
java ×1
logic ×1
object ×1
python-2.7 ×1
readability ×1
refactoring ×1
string ×1
webapp2 ×1