数据:依赖列表,已经验证为非循环.所以在这里,'a'取决于'b','c'(c取决于d)等等......
A = { 'a' : dict(b=1, c=1),
'c' : dict(d=1),
'd' : dict(e=1,f=1,g=1),
'h' : dict(j=1)
}
Run Code Online (Sandbox Code Playgroud)
我想要一个自上而下的递归解决方案让我们说,找到从'a'开始的链:a,c,d,e,g,f,b
所以,现在(非发电机解决方案):
def get_all(D,k):
L = []
def get2(D,k):
L.append(k)
for ii in D.get(k,[]):
get2(D, ii)
get2(D,k)
return L
Run Code Online (Sandbox Code Playgroud)
显然,这是非常弱的:)我一直在试着如何在那里获得收益,并且我很感激任何py-foo你们都可以带来这个.
有货PHP5,preg_replace这个转换的好表达是什么:
用<br />,但只在<pre>块内替换换行符
(随意做出简化假设,并忽略极端情况.例如,我们可以假设标签将是一行,而不是像病态一样)
输入文本:
<div><pre class='some class'>1
2
3
</pre>
<pre>line 1
line 2
line 3
</pre>
</div>
Run Code Online (Sandbox Code Playgroud)
输出:
<div><pre>1<br />2<br />3<br /></pre>
<pre>line 1<br />line 2<br />line 3<br /></pre>
</div>
Run Code Online (Sandbox Code Playgroud)
(激励上下文:尝试在维基词典的SyntaxHighlight_GeSHI扩展中关闭错误20760,并找到我的PHP技能(我主要做python)不符合要求).
除了regexen之外,我对其他解决方案持开放态度,但小的是首选(例如,构建html解析机制是过度的).
这似乎是101级,但我找不到答案!(相反,我找到了成功或失败,jQuery ajax().success等的链接.
我的预感是:
success:200 HTTP返回码failure: 还要别的吗.我对python并不是特别有经验,所以可能会在下面做些傻事.我有以下程序:
import os
import re
import linecache
LINENUMBER = 2
angles_file = open("d:/UserData/Robin Wilson/AlteredData/ncaveo/16-June/scan1_high/000/angles.txt")
lines = angles_file.readlines()
for line in lines:
splitted_line = line.split(";")
DN = float(linecache.getline(splitted_line[0], LINENUMBER))
Zenith = splitted_line[2]
output_file = open("d:/UserData/Robin Wilson/AlteredData/ncaveo/16-June/scan1_high/000/DNandZenith.txt", "a")
output_file.write("0\t" + str(DN) + "\t" + Zenith + "\n")
#print >> output_file, str(DN) + "\t" + Zenith
#print DN, Zenith
output_file.close()
Run Code Online (Sandbox Code Playgroud)
当我查看文件的输出时,我得到以下内容:
0 105.5 0.0
0 104.125 18.0
0 104.0 36.0
0 104.625 54.0
0 104.25 72.0
0 104.0 90.0
0 104.75 108.0
0 …Run Code Online (Sandbox Code Playgroud)