相关疑难解决方法(0)

Python读取可能不存在的文件

python中处理读取可能不存在的文件的最佳方法是什么?

目前我有以下内容:

    try:
        with open(filename, "r") as f:
            return f.read()
    except IOError:
        return False
Run Code Online (Sandbox Code Playgroud)

这是最好的方法,还是在任何级别上都是错误的?

我想我最担心的是:

  1. 捕获异常只是为了返回false
  2. 也许我错过了一种"Python"方式,默默地错过了丢失文件的错误

python

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

Python:如何知道我将文本附加到的文件是存在的还是刚刚创建的?

如果文件存在,我想将一些文本附加到文件中,或者创建文件并向其附加一些附加文本(如果它是刚刚创建的)。我知道我可以使用open("filename","a")追加/创建,因为如果文件不存在,这行代码将创建文件。但是,我如何知道该文件是否存在或刚刚创建?

最终我想实现这一目标:

with(open("filename","a")) as f:
    if filename existed before open
        # Append text
    else if filename was just created
        # Append some headers
        # Append text
Run Code Online (Sandbox Code Playgroud)

我可以通过首先检查文件是否存在 (os.path.isfile(filename)) 然后采取相应措施来实现这一点,但我正在寻找一种更优雅的方式。

python conditional file append

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

是否可以在Python中创建特定目录的快捷方式?

我查看了 inetrnet,但没有发现任何相关内容,所以我在这里问 - 是否可以使用 python 创建文件的快捷方式并将其放入我选择的特定目录中?例如,我在“C:”中有一个名为“EXAMPLE”的文件夹。我想自动创建谷歌浏览器的快捷方式并将其放在这个文件夹中。是否可以使用 python 来做到这一点(而不仅仅是我自己拖过去)?谢谢

python directory shortcut

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

通过 ctypes 从 Python 调用的 C 函数返回不正确的值

我用 C 编写了一个简单的函数,它可以将给定的数字提高到给定的幂。当我在 C 中调用它时,该函数返回正确的值,但是当我在 Python 中调用它时,它返回一个不同的、不正确的值。

我使用以下命令创建了共享文件: $ gcc -fPIC -shared -o test.so test.c

我尝试了 C 函数的不同配置,其中一些返回预期值,而另一些不返回。例如,当我的函数使用return x*x没有for循环的简单正方形时,它在 Python 中返回了正确的值。

我希望最终能够在 python 中调用一个 C 函数,该函数将返回一个二维 C 数组。

#include <stdio.h>

float power(float x, int exponent)
{
    float val = x;
    for(int i=1; i<exponent; i++){
        val = val*x;
    }
    return val;
}
Run Code Online (Sandbox Code Playgroud)
#include <stdio.h>

float power(float x, int exponent)
{
    float val = x;
    for(int i=1; i<exponent; i++){
        val = val*x;
    }
    return val;
}
Run Code Online (Sandbox Code Playgroud)

我在 C …

c python ctypes

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

在D中打开文件

如果我想安全地尝试在D中打开文件,则是首选方法

  1. 尝试打开它,捕获异常(并可选择找出原因)如果失败或
  2. 检查它是否存在,是否可读,然后才打开它

我猜测第二种替代结果会产生更多IO并且更复杂吗?

file-io d exception

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

为什么检查然后立即打开文件风险?

阅读这个问题的答案:如何使用Python检查文件是否存在?,答案陈述:

如果您检查的原因是这样,您可以做类似的事情if file_exists: open_it(),那么使用try围绕尝试打开它更安全.在检查和尝试打开文件时检查然后打开文件被删除或移动的风险或介于两者之间的风险.

如果您不打算立即打开文件,则可以使用 os.path.isfile

我无法理解为什么检查(通过os.path)然后打开被移动或删除的文件的风险.

这到底是什么意思?

python file

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

如何使用 python 检查本地计算机中给定 url 上是否存在图像文件

我想检查给定路径上是否存在图像。代码片段如下:

if the image exists:
   #business logic
else:
   #set default logo
Run Code Online (Sandbox Code Playgroud)

python django

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

如果文件已存在,Python 会跳过函数

我需要在 python 中创建一个跳过函数,如果文件已经存在,它会跳过我的下载代码。

该函数应该如何工作:(如果文件存在,则无需运行此代码,只需跳到下一个代码。如果不存在,则运行此代码,然后运行下一个代码)

    Filecheck = os.path.join(OUTPUT_FOLDER,"test"+version+"exe")
    print Filecheck

    if not os.path.exists(Filecheck):


     base_url = urlJoin(LINK, + version + "_multi.exe")
     print base_url

     filename2 = "%s_%s_.exe" % (software.capitalize(),version)
     original_filename = os.path.join(OUTPUT_FOLDER, filename2)


     if writeFile(original_filename, httpRequestFile(base_url), "wb") and os.path.exists(original_filename):
        print "Download done"
Run Code Online (Sandbox Code Playgroud)

python function

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

python TypeError:dl()只需4个参数(给定3个)

我得到一个类型错误,我的类在其函数dl()中使用self

import urllib
import httplib
import os.path

###SAI22 Library###



def exists(site):
    conn = httplib.HTTPConnection(site)
    conn.request("HEAD",site)
    response = conn.getresponse()
    conn.close()
    return response.status == 200

class sai_download:
    def dl(self,_dir,_url,pck):
        if pck == True:
            if exists(_url) == True:
                urllib.urlretrieve(_url,_dir)
                if os.path.isfile(_dir) == True:
                    print "Download successful"
                    return True
                else:
                    print "Download failed"
                    return False
            else:
                print "Url isnt valid"
                return False


        elif pck == False:
            if exists(_url) == True:
                urllib.urlretrieve(_url,_dir)
                return True
                if os.path.isfile(_dir) == True:
                    return True
                else:
                    return False
            else:
                return …
Run Code Online (Sandbox Code Playgroud)

python class urllib

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

如何在python中检查命令行参数是否为文件?

我想提供输入

%>Python_script_name listed_files
Run Code Online (Sandbox Code Playgroud)

如何检查是否作为文件存在或者它是某个输入参数。

<listed file can also be in path /govr/rest/listed_files >
Run Code Online (Sandbox Code Playgroud)

请分享小脚本,通过它我可以检查命令行参数是有效文件还是要处理的简单变量。

总而言之,我需要处理我的脚本,以便在命令行中使用 或 单个参数。

请帮忙。

提前致谢。

python linux command arguments

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