小编Woo*_*ble的帖子

用于从列表中查找和排除多个匹配的逻辑

我需要将列表的内容与给定的模式匹配,并形成另一个列表,除了匹配之外,它将包含所有内容.意思是,我正在尝试制作排除列表.

现在有一个模式匹配,很容易.但是对于更多那个,它变得棘手.

让我们看一个例子:

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来实现上面的逻辑.现在我们该怎么做?此外,我们不知道用户将要进入的模式数量.它可以是一个或多个.

任何人都有任何逻辑思想,请分享.

python logic

3
推荐指数
1
解决办法
395
查看次数

尝试再次读取打开的文件不会获得任何数据

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.我也尝试通过注释最后两行但仍返回空列表.上面的代码有什么问题?

python

3
推荐指数
2
解决办法
194
查看次数

推荐的.Net中的HTML可读性转码库

背景
我正在尝试阅读和分析来自网页的内容,重点是页面的主要内容 - 没有菜单,侧边栏,脚本和其他HTML混乱.

我试过了什么?

  • 我已经尝试过NReadability,但它会抛出异常并且在太多情况下失败.除此之外,它是一个很好的解决方案.
  • HTML Agility Pack不是我在这里需要的,因为我确实想要摆脱非内容代码.

编辑:我正在寻找一个实际上通过内容筛选的图书馆,并且仅向我提供页面中的"相关"文本(即,对于此页面,单词"review","chat","meta","about" ,顶部栏中的"faq" 将不会显示,以及"许可下的用户贡献".

那么,您是否知道用于从网站中提取内容的任何其他稳定的.Net库?

.net html readability

3
推荐指数
1
解决办法
1101
查看次数

如何使用不同的py文件来处理不同的路由?

我一直在研究python很长一段时间,最近我决定开始学习Web开发方面的事情.我有PHP和PHP框架的经验,以及ruby,其中:

  • 路由在(单个)文件中定义,然后在该文件中,每个路由被分配给一个模型(py文件),该模型将唯一地处理与该路由匹配的传入请求.

如何使用flask AND webapp2实现此目的

我完整地阅读了文档和教程,但它让我非常困惑.我只想要一个文件,其中所有路由和它们应该如何处理都被设置,然后每个路由请求由它自己的模型(python文件)处理.

所有示例都会导致单个文件应用程序.

非常感谢你,真的.请以一种简单的方式亲切地教导.

python flask python-2.7 webapp2

3
推荐指数
1
解决办法
2713
查看次数

在没有文件全名的python中打开文件?

我试图f = open('filename')在python中执行.但是,我不知道文件的全名.我所知道的是它以's12'开头并以'.ka'结尾,我知道它所在的文件夹,我知道它是该文件夹中唯一以"s12"和".ka开头和结尾的文件".有没有办法做到这一点?

python

3
推荐指数
1
解决办法
2103
查看次数

用python字典理解重构

我有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 refactoring dictionary-comprehension

3
推荐指数
1
解决办法
884
查看次数

遍历文本文件并为每个行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

python

3
推荐指数
1
解决办法
1594
查看次数

Java - 如何将对象转换为变量?

我正在编写一个编程语言,我需要将一个对象(如javascript中的var)转换为它应该的变量类型.例如:

if(object == variabletypes.string)
{
//convert object to string
}
else if(object ==variabletypes.int)
{
//convert to integer
}
Run Code Online (Sandbox Code Playgroud)

感谢您的时间,任何帮助将不胜感激.

java string int object

3
推荐指数
1
解决办法
4005
查看次数

我在python中使用子进程拒绝了Errno 13 Permission

问题的关键是

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)

如果需要更多信息,请告诉我.任何帮助表示赞赏.谢谢.

python error-handling bash hadoop apache-pig

3
推荐指数
1
解决办法
2万
查看次数

如何仅针对特定文件夹部署GAE项目?

我想知道如何仅为特定文件夹部署我的Google App Engine项目?

例如,如果我的项目源文件夹是"src",并且在此src文件夹中有许多子文件夹.说,我有css,app,images和js文件夹,但我想只将css,app和images文件夹部署到GAE,我希望GAE在部署期间忽略js文件夹,有没有办法这样做在app.yaml文件中设置?

谢谢!

乔尔

deployment google-app-engine

3
推荐指数
1
解决办法
836
查看次数