相关疑难解决方法(0)

如何只获取目录中的文件?

我有这个代码:

allFiles = os.listdir(myPath)
for module in allFiles:
    if 'Module' in module: #if the word module is in the filename
        dirToScreens = os.path.join(myPath, module)    
        allSreens = os.listdir(dirToScreens)
Run Code Online (Sandbox Code Playgroud)

现在,一切正常,我只需要更改线路

allSreens = os.listdir(dirToScreens)
Run Code Online (Sandbox Code Playgroud)

获取只是文件的列表,而不是文件夹.因此,当我使用

allScreens  [ f for f in os.listdir(dirToScreens) if os.isfile(join(dirToScreens, f)) ]
Run Code Online (Sandbox Code Playgroud)

它说

module object has no attribute isfile
Run Code Online (Sandbox Code Playgroud)

注意:我使用的是Python 2.7

python file python-2.7

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

python:获取目录中所有*.txt文件的列表

我是python语言的初学者

如何使用.txtpython语言列出目录中的所有文件?

例如获取列表文件:

['1.txt','2.txt','3.txt','4.txt','5.txt','6.txt']
Run Code Online (Sandbox Code Playgroud)

python

14
推荐指数
1
解决办法
8473
查看次数

编辑tensorflow inceptionV3 retraining-example.py进行多次分类

TLDR:无法弄清楚如何使用重新训练的inceptionV3进行多个图像预测.

你好亲切的人:)我花了几天时间搜索了很多stackoverflow帖子和文档,但我找不到这个问题的答案.非常感谢任何帮助!

我在新图片上重新训练了tensorflow inceptionV3模型,它可以按照https://www.tensorflow.org/versions/r0.9/how_tos/image_retraining/index.html上的说明使用新图像并使用以下命令:

bazel build tensorflow/examples/label_image:label_image && \
bazel-bin/tensorflow/examples/label_image/label_image \
--graph=/tmp/output_graph.pb --labels=/tmp/output_labels.txt \
--output_layer=final_result \
--image= IMAGE_DIRECTORY_TO_CLASSIFY
Run Code Online (Sandbox Code Playgroud)

但是,我需要对多个图像进行分类(如数据集),并严重依赖于如何操作.我在下面找到了以下示例

https://github.com/eldor4do/Tensorflow-Examples/blob/master/retraining-example.py

关于如何使用再训练模型,但同样,关于如何为多个分类修改它的细节非常稀少.

从我从MNIST教程中收集到的内容,我需要在sess.run()对象中输入feed_dict,但是因为我无法理解如何在此上下文中实现它而被困在那里.

任何帮助将非常感谢!:)

编辑:

运行Styrke的脚本并进行了一些修改,我得到了这个

    waffle@waffleServer:~/git$ python tensorflowMassPred.py  I
       tensorflow/stream_executor/dso_loader.cc:108] successfully opened
       CUDA library libcublas.so locally I
       tensorflow/stream_executor/dso_loader.cc:108] successfully opened
       CUDA library libcudnn.so locally I
       tensorflow/stream_executor/dso_loader.cc:108] successfully opened
       CUDA library libcufft.so locally I
       tensorflow/stream_executor/dso_loader.cc:108] successfully opened
       CUDA library libcuda.so locally I
       tensorflow/stream_executor/dso_loader.cc:108] successfully opened
       CUDA library libcurand.so locally
       /home/waffle/anaconda3/lib/python3.5/site-packages/tensorflow/python/ops/array_ops.py:1197:
       VisibleDeprecationWarning: converting an array with ndim > 0 to …
Run Code Online (Sandbox Code Playgroud)

python machine-learning python-3.x tensorflow

11
推荐指数
2
解决办法
3343
查看次数

读取所有目录中的所有文件

我有代码工作来读取单个文本文件的值,但是很难从所有目录中读取所有文件并将所有内容放在一起.

这是我有的:

filename = '*'
filesuffix = '*'
location = os.path.join('Test', filename + "." + filesuffix)
Document = filename
thedictionary = {}
with open(location) as f:
 file_contents = f.read().lower().split(' ') # split line on spaces to make a list
 for position, item in enumerate(file_contents): 
     if item in thedictionary:
      thedictionary[item].append(position)
     else:
      thedictionary[item] = [position]
wordlist = (thedictionary, Document)
#print wordlist
#print thedictionary
Run Code Online (Sandbox Code Playgroud)

请注意,我正在尝试将通配符*插入文件名以及文件后缀的通配符.我收到以下错误:

"IOError:[Errno 2]没有这样的文件或目录:'Test/. '"

我不确定这是否是正确的方法,但似乎如果我以某种方式让通配符工作 - 它应该工作.

我已经得到了这个例子: Python - 从子目录中找不到目录文件中的文件(在那里)

这有点不同 - 但不知道如何更新它来读取所有文件.我在想这个初始代码集:

previous_dir = os.getcwd()
os.chdir('testfilefolder') …
Run Code Online (Sandbox Code Playgroud)

python directory-structure file file-handling

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

特定目录中的Python3列表文件

如何列出仅来自特定目录的文件名?我不需要子目录中的文件名。

python linux filenames file python-3.x

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

如何使用Python列出目录

可能的重复:
如何在python中列出目录的所有文件

如何使用 python 列出所有目录内容并将其添加到列表中?

python directory list

8
推荐指数
1
解决办法
1134
查看次数

如何将文件路径+文件名放入列表?

我正在尝试获取包含文件路径和文件名的字符串列表。目前我只将文件名放入列表中。

代码:

hamFileNames = os.listdir("train_data\ham")
Run Code Online (Sandbox Code Playgroud)

输出:

['0002.1999-12-13.farmer.ham.txt', 
 '0003.1999-12-14.farmer.ham.txt', 
 '0005.1999-12-14.farmer.ham.txt']
Run Code Online (Sandbox Code Playgroud)

我想要一个类似于这样的输出:

['train_data\ham\0002.1999-12-13.farmer.ham.txt',
 'train_data\ham\0003.1999-12-14.farmer.ham.txt',
 'train_data\ham\0005.1999-12-14.farmer.ham.txt']
Run Code Online (Sandbox Code Playgroud)

python directory-listing

7
推荐指数
1
解决办法
2385
查看次数

Python MemoryError 未引发 - 而是调用 OOM-Killer?

我有一个使用大量内存的 python 应用程序,当我在循环中处理它时应该没问题try / except MemoryError。不幸的是,MemoryError 异常从未引发 - 在此之前,python 被 OOM Killer 杀死(在 Debian Linux 上)。

问题是为什么......以及我如何在 Python 中捕获错误。如果我能抓住它,我有一个简单的缓解措施,但无一例外,我无法调用我的缓解措施。

有关信息,该应用程序正在处理视频,每帧大约是 15MB 的 numpy 对象。如果内存不足,我很乐意降低帧速率并重试。

我还尝试在加载每一帧时使用 psutil.available 跟踪内存使用情况,但该进程被终止,仍然有大约 350MB 显示为可用内存(总共 2GB)。我认为这是一个碎片问题。

因此我遇到的问题是我可以任意设置一些限制,例如,如果我获得 <500MB 的可用内存,然后以较低的帧速率重新开始,但这一切都感觉有点随意且不是很健壮。如果应用程序或者操作系统或硬件发生变化,我可能会发现下次它在剩余 501MB 时崩溃,或者其他什么......这就是为什么我宁愿通过 MemoryError 异常来处理它。

可悲的是,这似乎不是一个常见问题,“python 调用 oom-killer 异常”只给了我两页 Google 搜索结果!以前这里的大多数答案是“不要使用太多内存”,这不是很有帮助 - 在我的情况下,我想使用尽可能多的可用内存,但如果需要,我很乐意减少使用。只是 Python 没有给我机会在它被杀死之前这样做!

任何想法都非常感谢。

python linux memory out-of-memory

7
推荐指数
1
解决办法
1216
查看次数

python可以检测到它在哪个操作系统下运行?

python可以检测操作系统,然后为文件系统构造一个if/else语句.

我需要用FileSys字符串替换Fn字符串中的C:\ CobaltRCX \.

import os.path, csv
from time import strftime

if os.path.?????:## Windows
   FileSys = r"C:\\working\\" 
else:   ##linux   
   FileSys = r"\\working\\" 

y=(strftime("%y%m%d"))
Fn = (r"C:\\working\\Setup%s.csv" %y)
Run Code Online (Sandbox Code Playgroud)

python linux windows

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

在 Python 中自动创建列表

我的代码:

red_images =  'DDtest/210red.png'
green_images = 'DDtest/183green.png'

b = [red_images, green_images]
shuffle(b)
Run Code Online (Sandbox Code Playgroud)

我有几百张图片,为了让我的代码尽可能简洁(并扩展我的 Python 知识),我想知道如何编写代码来自动获取文件夹中的文件并将它们列为列表。

我在 R 中做过类似的事情,但我不知道如何在 python 中做到这一点。

python list

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