小编use*_*312的帖子

wget:检查文件时间戳和覆盖

我怎样才能wget做到这一点:

x仅从文件的本地副本的时间戳大于文件时间戳的时间戳时,才从某个位置下载文件x.这意味着,它应该从给定位置下载文件,只有当文件的版本较新时才应该.

如果有更新版本的文件,wget应覆盖该文件.

是否有可能做到这一点?

wget

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

py2exe:减小库归档的大小

我刚刚创建了我的第一个py2exe可执行文件,并注意到使用EXE,创建了一个大小约为1.4 MB的ZIP文件.

我的问题是,我可以减小它的大小,或者预计使用py2exe生成的EXE的典型大小将是~4 MB(这意味着所有文件:python2.6dll,library.zip)

python py2exe

6
推荐指数
1
解决办法
2359
查看次数

混淆使用类或函数:使用lxml和Python编写XML文件

我需要使用lxml和Python编写XML文件.

但是,我无法弄清楚是否使用a class来执行此操作或功能.关键是,这是我第一次开发一个合适的软件,并决定在哪里以及为什么使用class仍然看似神秘.

我会说明我的观点.

例如,考虑我编写的以下基于函数的代码,用于将子元素添加到etree根目录.

from lxml import etree

root = etree.Element('document')

def createSubElement(text, tagText = ""):
    etree.SubElement(root, text)
    # How do I do this: element.text = tagText

createSubElement('firstChild')
createSubElement('SecondChild')
Run Code Online (Sandbox Code Playgroud)

正如预期的那样,这个输出是:

<document>
  <firstChild/>
  <SecondChild/>
</document>
Run Code Online (Sandbox Code Playgroud)

但是,您可以注意到注释,我不知道如何使用此方法设置文本变量.

是用class唯一的方法解决这个问题?如果是的话,你能给我一些关于如何实现这一目标的指示吗?

python lxml

5
推荐指数
1
解决办法
239
查看次数

了解开源软件许可证

我是开源世界的新手,所以请相应地回答!

我已经看到许多正在使用的许可证,如GPL,MIT,Apache许可证.当然,我不想成为一名律师,但至少掌握所有这些的基本知识会有所帮助.

那么我从哪里开始呢?我只是阅读这些许可证吗?或者那里有一本书/网站可以解释这一切吗?

open-source

5
推荐指数
1
解决办法
403
查看次数

在Python脚本中存储用户数据

在运行Python脚本时,如果我在下次运行脚本时再次需要数据,那么存储用户输入的数据的首选/常用方法是什么?

例如,我的脚本根据用户输入的内容执行计算,然后当用户再次运行脚本时,它会从上次运行中获取结果.

现在,我将数据写入文本文件并从那里读取.我不认为我需要存储非常大的记录(不到100,我会说).

我使用此脚本瞄准Windows和Linux用户,因此跨平台解决方案会很好.我对使用文本文件的唯一担忧是我觉得它可能不是最好的和通常的做法.

所以我的问题是,如果你需要为脚本存储一些数据,你是如何做到的?

python

5
推荐指数
3
解决办法
5592
查看次数

理解__call__和list.sort(键)

我有以下代码我想了解:

>>> class DistanceFrom(object):
        def __init__(self, origin):
            self.origin = origin
        def __call__(self, x):
            return abs(x - self.origin)  

>>> nums = [1, 37, 42, 101, 13, 9, -20]
>>> nums.sort(key=DistanceFrom(10))
>>> nums
[9, 13, 1, 37, -20, 42, 101]
Run Code Online (Sandbox Code Playgroud)

谁能解释一下这是如何工作的?据我所知,__call__调用时object()调用的是 - 将对象作为函数调用.

我不明白的是如何nums.sort(key=DistanceFrom(10)).这是如何运作的?有人可以解释一下这行吗?

谢谢!

python sorting

5
推荐指数
2
解决办法
421
查看次数

关闭lxml中没有文本的标记

我正在尝试使用Python和lxml输出XML文件

但是,我注意到一件事,如果标签没有文本,它就不会自行关闭.一个例子是:

root = etree.Element('document')
rootTree = etree.ElementTree(root)
firstChild = etree.SubElement(root, 'test')
Run Code Online (Sandbox Code Playgroud)

这个输出是:

<document>
<test/>
</document
Run Code Online (Sandbox Code Playgroud)

我希望输出为:

<document>
<test>
</test>
</document>
Run Code Online (Sandbox Code Playgroud)

所以基本上我想关闭一个没有文本的标签,但是用于属性值.我怎么做?而且,这样的标签叫什么?我会用谷歌搜索它,但我不知道如何搜索它.

python lxml

4
推荐指数
2
解决办法
3227
查看次数

getiterator()和iter()wrt与lxml有什么区别

正如问题所说,有什么区别:

x.getiterator()并且x.iter(),xElementTree或Element在哪里?因为它似乎适用于两者,我已经尝试过了.

如果我在某处错了,请纠正我.

python lxml

4
推荐指数
2
解决办法
1430
查看次数

无法修改全局int,但可以修改列表.怎么样?

LISTL = [] VAR1 = 0 def foo():... VAR1 + = 1 ...返回VAR1 ...

在调用时foo(),我收到此错误:

UnboundLocalError: local variable 'VAR1' referenced before assignment
Run Code Online (Sandbox Code Playgroud)

但是,请考虑清单 LISTL

>>> def foo(x):
...     LISTL.append(x)
...     return LISTL
... 
>>> foo(5)
[5]
Run Code Online (Sandbox Code Playgroud)

这按预期工作.问题是为什么列表中的追加有效,但我无法更改int?

另外,这是在Python中声明全局的正确方法吗?(在导入声明之后)

python

4
推荐指数
1
解决办法
803
查看次数

在python中,我怎么能将这三行代码变成一行代码?

这是代码

from sys import argv
script,from_file, to_file = argv
open(to_file,'w').write(open(from_file).read())
Run Code Online (Sandbox Code Playgroud)

我是python的新手,我正在努力学习Python,对于一个问题的额外功劳,它说这本书的作者能够将代码排成一行,所以我设法将其归结为3行,但我卡住了.

关心帮忙?

哦,代码将一个文件的内容复制到另一个文件,或者它的意思是.那是我的目标.

python copy

4
推荐指数
2
解决办法
1551
查看次数

标签 统计

python ×8

lxml ×3

copy ×1

open-source ×1

py2exe ×1

sorting ×1

wget ×1