草庐IT

python - 如何在python中获取调用者的文件名、方法名

例如,a.boo方法调用b.foo方法。在b.foo方法中,如何获取a的文件名(我不想将__file__传递给b.foo方法)。.. 最佳答案 您可以使用inspect模块来实现:frame=inspect.stack()[1]module=inspect.getmodule(frame[0])filename=module.__file__ 关于python-如何在python中获取调用者的文件名、方法名,我们在StackOverflow上找到一个类似的问题:

python - python文件名的下划线前缀是什么?

以cherryPy为例,有如下文件:__init__.py_cptools.py它们有何不同?这是什么意思? 最佳答案 __...__表示保留的Pythonname(在文件名和其他名称中)。您不应该使用双下划线符号发明自己的名字;如果你使用现有的,它们有特殊的功能。在这个特定示例中,__init__.py定义了包的“主”单元;它还导致Python将特定目录视为一个包。它是您调用importcherryPy时将使用的单位(并且cherryPy是一个目录)。这在Modulestutorial中有简要说明。.另一个例子是__eq__方法,

python - 匹配文件名开头和文件扩展名的正则表达式

匹配以“Run”开头且文件扩展名为“.py”的字符串(在本例中为文件名)的正则表达式是什么?正则表达式应匹配以下任何一项:RunFoo.pyRunBar.pyRun42.py不应该匹配:myRunFoo.pyRunBar.py1Run42.txt我正在寻找的SQL等价物是...LIKE'Run%.py'.... 最佳答案 对于正则表达式,您可以使用:re.match(r'Run.*\.py$')快速解释:。表示匹配任何字符。*表示匹配前一个字符的任何重复(因此.*表示任何字符序列)\是转义显式点的转义$表示“字符串的结尾”,所以我们

python - 在 Python 中将 unicode 文本规范化为文件名等

是否有任何独立的解决方案可以将国际unicode文本标准化为Python中的安全id和文件名?例如将MyInternationalText:åäö转为my-international-text-aaoplone.i18n确实做得很好,但不幸的是它依赖于zope.security和zope.publisher以及其他一些使其脆弱的依赖包。Someoperationsthatplone.i18napplies 最佳答案 你想要做的也被称为“slugify”一个字符串。这是一个可能的解决方案:importrefromunicodedata

python - 如何在 Python 中创建递增的文件名?

我正在创建一个程序,它将创建一个文件并将其保存到文件名为sample.xml的目录中。一旦文件被保存,当我再次尝试运行程序时,它会将旧文件覆盖到新文件中,因为它们确实具有相同的文件名。如何增加文件名,以便每当我尝试再次运行代码时,它都会增加文件名。并且不会覆盖现有的。我正在考虑先检查目录上的文件名,如果它们相同,代码将生成一个新文件名:fh=open("sample.xml","w")rs=[blockresult]fh.writelines(rs)fh.close() 最佳答案 例如,我将遍历sample[int].xml并获取文

python - 如何使用 Python 请求获取 pdf 文件名?

我正在使用Pythonrequests库以从Web获取PDF文件。这很好用,但我现在也想要原始文件名。如果我在Firefox中转到PDF文件并单击download它已经定义了一个文件名来保存pdf。我如何获得这个文件名?例如:importrequestsr=requests.get('http://www.researchgate.net/profile/M_Gotic/publication/260197848_Mater_Sci_Eng_B47_%281997%29_33/links/0c9605301e48beda0f000000.pdf')printr.headers['con

python - 调试:获取调用函数的文件名和行号?

我目前正在用Python构建一个相当复杂的系统,当我调试时,我经常将简单的打印语句放在几个脚本中。为了保持概览,我经常还想打印出print语句所在的文件名和行号。我当然可以手动执行此操作,也可以使用以下方式:frominspectimportcurrentframe,getframeinfoprintgetframeinfo(currentframe()).filename+':'+str(getframeinfo(currentframe()).lineno)+'-','whatIactuallywanttoprintouthere'打印如下内容:filenameX.py:273-w

python - 如何将日期时间添加到日志文件名?

创建日志文件时,我希望名称包含日期时间。在Python中,您可以获得当前日期时间:>>>fromdatetimeimportdatetime>>>datetime.now()datetime.datetime(2012,2,3,21,35,9,559000)str版本是>>>str(datetime.now())'2012-02-0321:35:22.247000'附加到日志文件名不是一个很好的str!我希望我的日志文件类似于:mylogfile_21_35_03_02_2012.log有没有什么Python可以让这变得简单?我将日志文件创建为:fh=logging.FileHandl

python - Python 类文件名也应该是驼峰式吗?

我知道Python中的类通常使用camelCase进行大小写。包含类的文件也是驼峰式的,特别是如果文件只包含类,这也是正常的约定吗?例如,类className是否也应该存储在className.py而不是class_name.py中? 最佳答案 以下答案主要来自thisanswer.如果您要遵循PEP8,则应坚持全小写名称,并带有可选的下划线。引用PEP8'snamingconventionsforpackages&modules:Modulesshouldhaveshort,all-lowercasenames.Underscor

python请求-在HTTP请求中POST多部分/表单数据没有文件名

我正在尝试使用python中的requests模块复制以下POST请求:POST/example/asdfasHTTP/1.1Host:example.comUser-Agent:Mozilla/5.0(WindowsNT6.1;WOW64;rv:28.0)Gecko/20100101Firefox/28.0Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8Accept-Language:en-US,en;q=0.5Accept-Encoding:gzip,deflateConnection:ke