小编Sil*_*ost的帖子

如何防止模块导入两次?

在编写python模块时,有没有办法防止它被客户端代码导入两次?就像c/c ++头文件一样:

#ifndef XXX
#define XXX
...
#endif
Run Code Online (Sandbox Code Playgroud)

非常感谢!

python import module

29
推荐指数
3
解决办法
2万
查看次数

将打印重定向到日志文件

好的.我已经完成了我的第一个python程序.它有大约1000行代码.在开发期间,我print在运行命令之前放置了大量语句,os.system() 例如,

print "running command",cmd
os.system(cmd)
Run Code Online (Sandbox Code Playgroud)

现在我已经完成了这个计划.我考虑过对它们进行评论,但重定向所有这些不必要的打印(我无法删除所有print语句 - 因为有些语句为用户提供有用的信息)到日志文件中会更有用吗?任何技巧或提示.

python printing logging

29
推荐指数
4
解决办法
7万
查看次数

在单独的文件夹中编译python文件的方法?

是否可以让Python将.pyc文件保存到单独的文件夹位置sys.path

/code
    foo.py
    foo.pyc
    bar.py
    bar.pyc
Run Code Online (Sandbox Code Playgroud)

至:

/code
   foo.py
   bar.py
/code_compiled
   foo.pyc
   bar.pyc
Run Code Online (Sandbox Code Playgroud)

我想这样,因为我觉得它更有条理.感谢你给与我的帮助.

python compiled file

28
推荐指数
4
解决办法
1万
查看次数

如何从os.walk过滤文件(已知类型)?

我有清单os.walk.但我想排除一些目录和文件.我知道如何使用目录:

for root, dirs, files in os.walk('C:/My_files/test'):
    if "Update" in dirs:
        dirs.remove("Update")
Run Code Online (Sandbox Code Playgroud)

但是我怎么能用我知道的文件来做呢.因为这不起作用:

if "*.dat" in files:
    files.remove("*.dat")
Run Code Online (Sandbox Code Playgroud)

python

28
推荐指数
5
解决办法
4万
查看次数

如何从单独的文件将数据结构(例如dict)导入或包含到Python文件中

我知道我可以使用常见文件包含Python代码import MyModuleName- 但是如何导入一个dict呢?

我试图解决的问题是我有一个需要在可编辑位置的文件中的字典,而实际的脚本在另一个文件中.dict也可以由非程序员手工编辑.

script.py

airportName = 'BRISTOL'
myAirportCode = airportCode[airportName]
Run Code Online (Sandbox Code Playgroud)

myDict.py

airportCode = {'ABERDEEN': 'ABZ', 'BELFAST INTERNATIONAL': 'BFS', 'BIRMINGHAM INTERNATIONAL': 'BHX', 'BIRMINGHAM INTL': 'BHX', 'BOURNMOUTH': 'BOH', 'BRISTOL': 'BRS'}
Run Code Online (Sandbox Code Playgroud)

如何airportCodescript.py中访问dict ?

python import module

28
推荐指数
2
解决办法
7万
查看次数

28
推荐指数
4
解决办法
3万
查看次数

Python扩展了一个空列表错误?

为什么python 2.5.2具有以下行为

>>>[2].extend([]) == [2]
False

>>> [2].extend([]) == None
True

$ python --version
Python 2.5.2
Run Code Online (Sandbox Code Playgroud)

我假设我在这里不理解某些东西,但直觉上我认为[2] .extend([])应该产生[2]

python list extend

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

在Python中处理异常的正确方法?

我搜索了其他帖子,因为我觉得这是一个相当常见的问题,但我发现的所有其他Python异常问题都没有反映我的问题.

我会尽量在这里具体说明,所以我将举一个直接的例子.并且pleeeeease不会针对此特定问题发布任何变通方法.我对你如何使用xyz发送更好的电子邮件并不感兴趣.我想知道你一般如何处理依赖的,容易出错的语句.

我的问题是,如何很好地处理异常,相互依赖的异常,意思是:只有第一步成功,尝试下一步,依此类推.还有一个标准是:必须捕获所有异常,此代码必须是健壮的.

供您考虑的一个例子:

try:
    server = smtplib.SMTP(host) #can throw an exception
except smtplib.socket.gaierror:
    #actually it can throw a lot more, this is just an example
    pass
else: #only if no exception was thrown we may continue
    try:
        server.login(username, password)
    except SMTPAuthenticationError:
        pass # do some stuff here
    finally:
        #we can only run this when the first try...except was successful
        #else this throws an exception itself!
        server.quit() 
    else:
        try:
            # this is already the 3rd nested try...except
            # for such …
Run Code Online (Sandbox Code Playgroud)

python exception

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

获取字典中的最大键

我有一本看起来像这样的字典

MyCount= {u'10': 1, u'1': 2, u'3': 2, u'2': 2, u'5': 2, u'4': 2, u'7': 2, u'6': 2, u'9': 2, u'8': 2}
Run Code Online (Sandbox Code Playgroud)

我需要最高的密钥,这是10,但如果尝试max(MyCount.keys()) 它给9最高.
同样的max(MyCount).

字典是动态创建的.

python

27
推荐指数
2
解决办法
4万
查看次数

如何重置array_diff结果中的索引?

我有两个数组:Array ( [0] => 2 [1] => 3 )Array ( [0] => 2 ).我想得到的值,不在第二个数组中.所以我已经使用了这个array_diff函数但是我的结果会得到 Array ( [1] => 3 ) 实际上这就是结果.但这里有一个小问题,它的位置是(关键)1.我希望结果从第0个位置开始到新数组,即Array ( [0] => 3 ).

有人帮助我吗?

php

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

标签 统计

python ×9

import ×2

module ×2

compiled ×1

exception ×1

extend ×1

file ×1

list ×1

logging ×1

php ×1

printing ×1

string ×1

uppercase ×1