草庐IT

递归图

全部标签

Python:如何递归地从嵌套数据结构(列表和字典)中删除无值?

这是一些嵌套数据,包括列表、元组和字典:data1=(501,(None,999),None,(None),504)data2={1:601,2:None,None:603,'four':'sixty'}data3=OrderedDict([(None,401),(12,402),(13,None),(14,data2)])data=[[None,22,tuple([None]),(None,None),None],((None,202),{None:301,32:302,33:data1},data3)]目标:删除任何为None的键或值(来自“数据”)。如果一个列表或字典包含一个值,

python - 用 Python 在给定目录及其子目录中递归替换文件中的字符串?

如何在给定目录及其子目录中递归地用给定的替换替换文件中的字符串匹配?伪代码:importosimportrefromos.pathimportwalkforroot,dirs,filesinos.walk("/home/noa/Desktop/codes"):fornameindirs:re.search("dbname=noauser=noa","dbname=masiuser=masi")//Iamtryingtoreplacehereagivenmatchinafile 最佳答案 将所有这些代码放入一个名为mass_repla

python - 递归 os.listdir?

这个问题在这里已经有了答案:Pythonrecursivefolderread(16个答案)关闭9年前。我想递归地获取目录中所有文件的列表,没有目录。假设有一个目录~/files,其中包含“a.txt”、“b.txt”,以及一个目录“c”,其中包含“d.txt”和“e”,并且e里面的“f.txt”。我将如何获得一个看起来像['/home/user/files/a.txt','/home/user/files/b.txt','/home/user/files/c/d.txt','/home/user/files/c/e/f.txt']?

python - 将列表递归减 1

非常快速和简单的家庭作业问题。我运行正常,但我认为还有更好的方法来做到这一点。一种更Pythonic的方式。这是我递归地将列表的每个元素递减1的代码。l=range(30)defrecurseDecrMap(l,x=[]):iflen(l)==0:return[]else:x.append(l[0]-1)recurseDecrMap(l[1:],x)returnx非常感谢您的任何意见。我正在努力学习做更好的递归。无法获取它的诀窍。 最佳答案 可能较少pythonic,但有:defrecurseDecrMap(l):return[l[

python - PathLib 递归删除目录?

有没有办法删除PathLib模块中的目录及其内容?使用path.unlink()它只删除一个文件,使用path.rmdir()目录必须是空的。有没有办法在一个函数调用中做到这一点? 最佳答案 如您所知,仅有的两个用于删除文件/目录的Path方法是.unlink()和.rmdir()和你想要的也没有。Pathlib是一个提供跨不同操作系统的面向对象路径的模块,它并不意味着有很多不同的方法。Theaimofthislibraryistoprovideasimplehierarchyofclassestohandlefilesystemp

python - 为什么尾递归优化比 Python 中的普通递归更快?

虽然我知道尾递归优化是非Pythonic的,但我想出了一个快速的hack来解决这里的一个问题,这个问题在我准备发布时就被删除了。在1000个堆栈限制下,深度递归算法在Python中不可用。但有时通过解决方案进行初步思考非常有用。由于函数在Python中是一流的,所以我尝试返回一个有效函数和下一个值。然后在循环中调用该过程,直到完成单个调用。我敢肯定这不是新的。我发现有趣的是,我预计来回传递函数的额外开销会使它比正常递归慢。在我的粗略测试中,我发现它花费了正常递归时间的30-50%。(还有允许LONG递归的额外好处。)这是我正在运行的代码:fromcontextlibimportcont

python - Yield Request调用在scrapy的递归方法中产生奇怪的结果

我正在尝试使用Python和Scrapy在一天内从所有国家/地区的所有机场取消所有出发和到达。这个著名网站(飞行雷达)使用的JSON数据库需要在一个机场出发或到达>100时逐页查询。我还根据查询的实际日期UTC计算时间戳。我尝试创建具有此层次结构的数据库:country1-airport1-departures-page1-page...-arrivals-page1-page...-airport2-departures-page1-page...-arrivals-page-page......我使用两种方法来按页面计算时间戳和url查询:defcompute_timestamp(

python - 递归:具有分布的账户值(value)

更新:不确定如果没有某种形式的loop是否可行,但np.where在这里不起作用。如果答案是“你不能”,那就这样吧。如果可以做到,它可能会使用scipy.signal中的内容。.我想对下面代码中的循环进行矢量化,但由于输出的递归性质,我不确定如何进行矢量化。我当前设置的演练:以起始金额(100万美元)和季度美元分配(5,000美元)为例:dist=5000.v0=float(1e6)每月生成一些随机证券/账户返回(十进制形式):r=pd.Series(np.random.rand(12)*.01,index=pd.date_range('2017',freq='M',periods=1

Python递归挑战

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭6年前。Improvethisquestion我目前正在上Python导论和计算理论课,最近期中有一道难题我根本做不出来。它涉及为添加数字的程序编写代码。我相信这个问题应该使用递归。我不记得这个问题的措辞是怎样的,但这是基本的想法。实现multiadder(n)函数,它接受一个非负整数n并将n任意值相加。每个要添加的值都必须作为单独的调用编写。例如:>>>multi_three=multiadder(3)>>>multi_three(1)(2)(3)

python - 如何使用 ElementTree 递归迭代 Python 中的 XML 标签?

我正在尝试使用ElementTree遍历树中的所有节点。我做了类似的事情:tree=ET.parse("/tmp/test.xml")root=tree.getroot()forchildinroot:###dosomethingwithchild问题是child是一个Element对象而不是ElementTree对象,所以我无法进一步研究它并递归迭代它的元素。有没有一种方法可以对“根”进行不同的迭代,以便它迭代树中的顶级节点(直接子节点)并返回与根本身相同的类? 最佳答案 要遍历所有节点,请使用iterElementTree上的方