我编写了一个脚本,通过从网站下载最新版本并覆盖正在运行的脚本来保持自己的最新状态.
我不确定在更新脚本后重新启动脚本的最佳方法是什么.
有任何想法吗?
我真的不想要一个单独的更新脚本.哦,它也必须在Linux/Windows上工作.
在下面的例子中,我想格式化为1位小数,但python似乎想要将数字四舍五入,有没有办法让它不是数字上升?
>>> '{:.1%}'.format(0.9995)
'100.0%'
>>> '{:.2%}'.format(0.9995)
'99.95%'
Run Code Online (Sandbox Code Playgroud)
谢谢!:)
继我之前的问题,Python的时间老化之后,我现在遇到了关于时区的问题,结果发现它并不总是"+0200".因此当strptime尝试解析它时,它会引发异常.
我想过用[:-6]或者其他什么来切断+0200,但有一种真正的方法可以用strptime做到这一点吗?
如果重要的话,我正在使用Python 2.5.2.
>>> from datetime import datetime
>>> fmt = "%a, %d %b %Y %H:%M:%S +0200"
>>> datetime.strptime("Tue, 22 Jul 2008 08:17:41 +0200", fmt)
datetime.datetime(2008, 7, 22, 8, 17, 41)
>>> datetime.strptime("Tue, 22 Jul 2008 08:17:41 +0300", fmt)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.5/_strptime.py", line 330, in strptime
(data_string, format))
ValueError: time data did not match format: data=Tue, 22 Jul 2008 08:17:41 +0300 fmt=%a, %d %b %Y %H:%M:%S +0200
Run Code Online (Sandbox Code Playgroud) 我想出来:
re.findall("([a-fA-F\d]*)", data)
Run Code Online (Sandbox Code Playgroud)
但它不是非常简单的证据,是否有更好的方法来获取所有MD5哈希码?
说我有一个清单:
A = [1,2,3,4,5,6,7,8,9,0]
Run Code Online (Sandbox Code Playgroud)
和第二个清单:
B = [3,6,9]
Run Code Online (Sandbox Code Playgroud)
排序列表A的最佳方法是什么,以便与列表B中的项匹配的任何内容都将出现在开头,以便结果为:
[3,6,9,1,2,4,5,7,8,0]
Run Code Online (Sandbox Code Playgroud) 我有一个python脚本,我想添加一个"完成后关闭"功能.
我知道我可以使用gksudo(当用户点击"完成时关闭")向用户询问root权限但是我如何在以后使用这些权限(当脚本实际完成时).
我在关机命令上考虑了chmod u + s,所以我不需要密码,但我真的不想这样做.
我有什么想法可以达到这个目的吗?
在此先感谢,Ashy.
Python中有没有办法处理XML文件,就像PHP的SimpleXML扩展一样?
理想情况下,我只希望能够从列表对象访问某些xml数据.
我正在使用re.findall()从HTML文件中提取一些版本号:
>>> import re
>>> text = "<table><td><a href=\"url\">Test0.2.1.zip</a></td><td>Test0.2.1</td></table> Test0.2.1"
>>> re.findall("Test([\.0-9]*)", text)
['0.2.1.', '0.2.1', '0.2.1']
Run Code Online (Sandbox Code Playgroud)
但我想只得到那些没有以点结尾的那些.文件名可能并不总是.zip所以我不能只在正则表达式中粘贴.zip.
我想结束:
['0.2.1', '0.2.1']
Run Code Online (Sandbox Code Playgroud)
任何人都可以建议使用更好的正则表达式吗?:)
假设我只需要使用re模块中的findall(),它是否更有效:
from re import findall
Run Code Online (Sandbox Code Playgroud)
要么
import re
Run Code Online (Sandbox Code Playgroud)
在速度/内存使用方面是否有任何差异?
重复:在Python中,如何获取当前正在执行的文件的路径和名称?
我想找出当前正在执行的脚本的路径.我已经尝试过os.getcwd()但是只返回我运行脚本的目录,而不是脚本存储的实际目录.
我正在尝试将日期字符串转换为年龄.
字符串就像:"星期一,2008年11月17日01:45:32 +0200",我需要知道它已经有多少天了.
我使用以下方式成功转换了日期:
>>> time.strptime("Mon, 17 Nov 2008 01:45:32 +0200","%a, %d %b %Y %H:%M:%S +0200")
(2008, 11, 17, 1, 45, 32, 0, 322, -1)
Run Code Online (Sandbox Code Playgroud)
出于某种原因,%z给了我+0200的错误,但这并不重要.
我可以使用以下时间获取当前时间:
>>> time.localtime()
(2009, 2, 3, 19, 55, 32, 1, 34, 0)
Run Code Online (Sandbox Code Playgroud)
但是如何在不通过列表中的每个项目并手动执行的情况下从另一个中减去一个?