Python有类似下面的内容吗?
for item in items #where item>3:
#.....
Run Code Online (Sandbox Code Playgroud)
我的意思是Python 2.7和Python 3.3.
我的python脚本中有这行代码.它搜索特定目录中的所有文件以查找*cycle*.log.
for searchedfile in glob.glob("*cycle*.log"):
Run Code Online (Sandbox Code Playgroud)
这非常有效,但是当我将脚本运行到网络位置时,它不会按顺序搜索它们,而是随机搜索.
有没有办法强制代码按日期顺序搜索?
这个问题已经被问到了php,但我不确定这些差异.
谢谢
如何根据时间戳列出目录中的文件?
os.listdir()
Run Code Online (Sandbox Code Playgroud)
以任意顺序列出.
是否有基于时间戳列出的内置函数?或任何订单?
我在网上找到了这个目录检查代码并对其进行了一些修改,因此它会打印出添加的文件.有一个浮标每次都会向我发送读数,但有时连接会丢失,而不是一个文件,它会发送多个文件.我需要程序按创建日期为我排序.有没有办法做到这一点?
import os, time
path_to_watch = 'c://Users//seplema//Documents//arvuti'
before = dict([(f, None) for f in os.listdir (path_to_watch)])
while 1:
after = dict([(f, None) for f in os.listdir (path_to_watch)])
added = [f for f in after if not f in before]
if before == after:
1==1
else:
if len(added)==1:
print added[0]
else:
for i in range (0,len(added)):
print added[i]
time.sleep(10)
before = after
Run Code Online (Sandbox Code Playgroud) 这既是一个挑战,也是一个问题:
我有一个数据文件夹.我想要以下信息列表列表:
Filename: Created: Last modified:
Information =
[
[datafile1, Mon Mar 04 10:45:24 2013, Tue Mar 05 12:05:09 2013],
[datafile2, Mon Mar 04 11:23:02 2013, Tue Apr 09 10:57:55 2013],
[datafile2.1, Mon Mar 04 11:37:21 2013, Tue Apr 02 15:35:58 2013],
[datafile3, Mon Mar 04 15:36:13 2013, Thu Apr 18 15:03:25 2013],
[datafile4, Mon Mar 11 09:20:08 2013, Mon May 13 16:30:59 2013]
]
Run Code Online (Sandbox Code Playgroud)
我有信息后可以自己分类.有人可以写这个功能:
def get_information(directory):
.
.
.
return Information
Run Code Online (Sandbox Code Playgroud)
这些帖子很有用:
2) 按日期排序文件
我正在尝试通过使用for循环来创建字典。我有一个有序列表,我正在尝试将列表中的值与有序数字进行匹配。例如:{0:100,1:423,2:434}
我只是在麻烦for循环。
list = [102, 232, 424]
count = 0
d = {} #Empty dictionary to add values into
for i in list:
#dictionary key = count
#key.append(i)
count+=1
Run Code Online (Sandbox Code Playgroud)
因此,在for循环中,我本质上希望将count变量作为键,并在列表中具有对应的项作为值。然后,我要加一,然后继续。如果我的代码在for循环中有点不清楚,我也很抱歉。那不是实际的代码,而只是我所寻找的一般性想法。谁能帮我?谢谢。
我正在连接到带有文件列表的 sftp 文件夹。我需要按日期订购这些并提取最新的两个。
filepath= "/test/sftp/files/"
localpath= "C:/myfiles/"
os.get(filepath, localpath)
Run Code Online (Sandbox Code Playgroud)
我可以使用 os.get 提取所有文件,但我尝试过 os.listdir 但这并没有按我需要的日期排序。我查看了 os 库,但找不到按日期订购的东西。
我需要从 python 运行系统命令
我有 python - 版本 - Python 2.4.3
我尝试以下操作,在本例中为ls -ltr | 八月
#!/usr/bin/python
import commands
Month = "Aug"
status,output = commands.getstatusoutput(" ls -ltr | grep Month " )
print output
Run Code Online (Sandbox Code Playgroud)
如何在命令中插入 Month 变量?
所以grep会这样做
| grep Aug
Run Code Online (Sandbox Code Playgroud)
我也试试这个
status,output = commands.getstatusoutput( " ls -ltr | grep {} ".format(Month) )
Run Code Online (Sandbox Code Playgroud)
但我收到以下错误
Traceback (most recent call last):
File "./stamm.py", line 14, in ?
status,output = commands.getstatusoutput( " ls -ltr | grep {} ".format(Month) )
AttributeError: 'str' object has no …Run Code Online (Sandbox Code Playgroud) 请在下面的对话框中帮忙解决很多问题:
- )为什么"subprocess.check_output(["ls"," - rt","."])"产生没有输出,但至少被接受了?
- )为什么"subprocess.check_output(["ls -rt","."])"根本不被接受?
- )最重要的是:我怎样才能在python中获取与某些正则表达式匹配的最新文件的名称?我的想法是向python提供类似"ls -rt $ REGEX | head -1"的东西,但python似乎非常不喜欢这样的方法..?
karel@suske:~/home_shared/develop/airnav_db$ python --version
Python 2.7.6
karel@suske:~/home_shared/develop/airnav_db$ python -c 'import subprocess ; subprocess.check_output(["ls -rt","."])'
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/usr/lib/python2.7/subprocess.py", line 566, in check_output
process = Popen(stdout=PIPE, *popenargs, **kwargs)
File "/usr/lib/python2.7/subprocess.py", line 710, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1327, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
karel@suske:~/home_shared/develop/airnav_db$ python -c 'import subprocess …Run Code Online (Sandbox Code Playgroud)