Удалить Python UserWarning

Я только что закончил установку моего пакета MySQLdb для Python 2.6, и теперь, когда я импортирую его с помощью import MySQLdb , появится предупреждение пользователя

 /usr/lib/python2.6/site-packages/setuptools-0.8-py2.6.egg/pkg_resources.py:1054: UserWarning: /home/sgpromot/.python-eggs is writable by group/others and vulnerable to attack when used with get_resource_filename. Consider a more secure location (set with .set_extraction_path or the PYTHON_EGG_CACHE environment variable). warnings.warn(msg, UserWarning) 

Есть ли способ избавиться от этого?

2 Solutions collect form web for “Удалить Python UserWarning”

Вы можете изменить ~/.python-eggs чтобы они не могли быть записаны группой / всеми. Я думаю, что это работает:

 chmod g-wx,o-wx ~/.python-eggs 

Вы можете подавлять предупреждения с помощью -W ignore :

 python -W ignore yourscript.py 

Если вы хотите подавить предупреждения в своем сценарии (цитата из документов):

Если вы используете код, который, как вы знаете, вызовет предупреждение, например, устаревшую функцию, но не хочет видеть предупреждение, тогда можно отключить предупреждение с помощью диспетчера контекстов catch_warnings:

 import warnings def fxn(): warnings.warn("deprecated", DeprecationWarning) with warnings.catch_warnings(): warnings.simplefilter("ignore") fxn() 

Внутри контекстного менеджера все предупреждения будут просто проигнорированы. Это позволяет использовать известный устаревший код без необходимости видеть предупреждение, не подавляя предупреждение для другого кода, который может не знать о его использовании устаревшего кода. Примечание: это можно гарантировать только в однопоточном приложении. Если два или более потока используют диспетчер контекстов catch_warnings в одно и то же время, поведение не определено.

Если вы хотите просто игнорировать предупреждения, вы можете использовать filterwarnings :

 import warnings warnings.filterwarnings("ignore") 
Python - лучший язык программирования в мире.