小编Ari*_*ury的帖子

Python构造函数和__init__

为什么构造函数确实被称为"构造函数"?他们的目的是什么?他们与班级中的方法有什么不同?

另外,__init__课堂上可以有更多的吗?我尝试了类似下面的内容,有人可以解释一下结果吗?

>>> class test:
    def __init__(self):
        print "init 1"
    def __init__(self):
        print "init 2"


>>> s=test()
init 2
Run Code Online (Sandbox Code Playgroud)

最后,是__init__一个运算符overloader?

python

99
推荐指数
3
解决办法
22万
查看次数

如何将导航栏静态引导到固定滚动?

当它到达页面顶部时,我想在滚动时将静态导航栏设置为固定导航栏.

有没有办法使用bootstrap 3 css或javascript获取它?

javascript jquery html5 css3 twitter-bootstrap-3

30
推荐指数
4
解决办法
14万
查看次数

Python领先的下划线_variables

我们知道在类中,使用以下函数时__function__不会导入:

from module import *
Run Code Online (Sandbox Code Playgroud)

有人问什么是_variable?我从来没有一个.
它们存在吗?这是一个变量的概念,无法使用类对象或其他东西访问?

python

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

为什么Logging不能在django网站上运行?

这是我试过的.在我的view.py文件中,

import logging
logger = logging.getLogger("mylog")
logging.basicConfig(format='%(name)s:%(levelname)s:%(message)s',level=logging.INFO,datefmt='%d/%m/%y %I:%M:%S')
Run Code Online (Sandbox Code Playgroud)

然后在一个函数里面,

logger.debug("this is an error")
logger.warning("This is a warning")
print "This is a test line '
Run Code Online (Sandbox Code Playgroud)

我没有触及settings.py文件.几乎一样.

LOGGING = {

    'version': 1,

    'disable_existing_loggers': False,

    'handlers': {

        'mail_admins': {

            'level': 'ERROR',

            'class': 'django.utils.log.AdminEmailHandler'

        }

    },

    'loggers': {

        'django.request': {

            'handlers': ['mail_admins'],

            'level': 'ERROR',

            'propagate': True,

        },

    }
Run Code Online (Sandbox Code Playgroud)

当我运行服务器,并调用该函数时,没有任何反应.没有错误,没有.

我只想在控制台上看到一个日志行.

python django

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

Django:将变量传递给登录设置文件

我试图通过我的settings.py文件将变量添加到我的日志行.

这是设置中的代码(日志记录部分):

LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'handlers': {
        'mail_admins': {
                        'level': 'CRITICAL',
                         'class': 'django.utils.log.AdminEmailHandler'
                        },

        'customhandler':{
                        'level':'DEBUG',
                        'class':'logging.RotatingFileHandler',
                        'formatter':'custom_format',
                        'filename':LOG_LOCATION
                        },
                 },

     'loggers': {
         'django.request': {
                        'handlers': ['mail_admins'],
                         'level': 'CRITICAL',
                        'propagate': True,
                            },
         'Logger_Custom1': {
                        'handlers':['customhandler'],
                        'level':'DEBUG',
                        'propagate':True
                           },
                 },

    'formatters': {
        'verbose': {
            'format': '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s'
                     },
         'simple': {
            'format': '%(levelname)s %(message)s'
                     },
         'custom_format':{
            'format':'[%(asctime)s %(levelname)s T:%(threadName)s F:%(funcName)s ] %(message)s '
                         },
                 }
}
Run Code Online (Sandbox Code Playgroud)

上面的代码工作正常,但现在我希望每条日志消息最后都有一个变量.就像是:

MyVariable = "Somelines" 
[%(asctime)s %(levelname)s T:%(threadName)s F:%(funcName)s …
Run Code Online (Sandbox Code Playgroud)

python django logging

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

用于确切类名的Css选择器

我正在尝试为确切的类名创建一个css选择器查​​询.

考虑一下这个HTML

<div class="My class1">Some long text</div>
<div class="My class1 234">Some long text2</div>
<div class="My class1">Some long text3</div>
<div class="My class1 haha">Some long text2</div>
Run Code Online (Sandbox Code Playgroud)

现在我只想抓住班级'我的班级1'...而忽略'我的班级1,234'或'我的班级1哈哈'..

查询$$('div.My class1')给出了上述所有4个.注意:我正在尝试使用firebug控制台..

如何在这里指定确切的类名,以便只获取特定的类?

谢谢

javascript css css-selectors

5
推荐指数
3
解决办法
8878
查看次数

如何在 Ansible 中使用 --all 来区分是否修剪 Docker 镜像?

在 Ansible playbook 中,我们可以请求相当于调用

docker image prune
Run Code Online (Sandbox Code Playgroud)

这样:

docker image prune
Run Code Online (Sandbox Code Playgroud)

但是,似乎没有一种方法可以请求--all,即修剪容器中未使用的所有图像。无论如何,默认情况下它不会这样做:

TASK [role : Clean up Docker images] ***
ok: [server] => {
    "changed": false, 
    "images": [], 
    "images_space_reclaimed": 0
}
Run Code Online (Sandbox Code Playgroud)

显然,images_filters有一些选项与 CLI Docker 选项不直接对应:

用于选择要删除的图像的过滤器值字典。例如,dangling: true。有关可能的过滤器的更多信息,请参阅docker 文档。

不幸的是,这个选项根本没有记录在案。删除悬空图像是默认设置,那么true甚至会产生什么效果呢?

我如何告诉 Ansible 执行相当于 的操作docker image prune --all

ansible docker devops

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

用于从列表中查找和排除多个匹配的逻辑

我需要将列表的内容与给定的模式匹配,并形成另一个列表,除了匹配之外,它将包含所有内容.意思是,我正在尝试制作排除列表.

现在有一个模式匹配,很容易.但是对于更多那个,它变得棘手.

让我们看一个例子:

Lmain=[arc123, arc234,xyz111,xyz222,ppp999,ppp888]

for count in range(len[Lmain]):

    if Pattern matches Lmain[i]:
              Pass
    else:result.append(Lmain[i])
Run Code Online (Sandbox Code Playgroud)

现在让我们说pattern = arc,我的结果就是

result = [xyz111,xyz222,ppp999,ppp888]
Run Code Online (Sandbox Code Playgroud)

这只是一个逻辑,我将使用常规expr来查找匹配.

现在,如果我们有2个模式,那么在循环中使用上面的逻辑:

Pattern=['arc','xyz']

for pat in Pattern:
      if pat matches Lmain[i]:
          Pass
      else:result.append(Lmain[i])
Run Code Online (Sandbox Code Playgroud)

这会给我们错误的结果

result = [xyz111,xyz222,ppp999,ppp888,arc123,arc234,ppp999,ppp888]
Run Code Online (Sandbox Code Playgroud)

所以,你可以看到上面的逻辑不会起作用.

我的计划:

首先,我们找到第一个Pattern的排除列表,它将给出结果:

result = [xyz111,xyz222,ppp999,ppp888]
Run Code Online (Sandbox Code Playgroud)

对于第二种模式,我们需要查看上述结果.

if Pattern matches Result[i]:
      Pass
else:result_final.append(Result[i])
Run Code Online (Sandbox Code Playgroud)

我认为我们需要使用Recursion来实现上面的逻辑.现在我们该怎么做?此外,我们不知道用户将要进入的模式数量.它可以是一个或多个.

任何人都有任何逻辑思想,请分享.

python logic

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

确定网站是否使用Django开发

我实际上有一些问题(真正幼稚).

1)如果我知道一个网站已经使用Django开发的,我们可以从HTML源代码确定(通过右击并选择"查看页面源代码"),如果该网站已经使用Django开发?

2)如果我有一个用HTML编写的网站的HTML代码,我只是想用django来呈现它,那么如何使用django呈现这个HTML代码?

3)对于什么样的网站,django应该使用还是用于?我的意思是纯静态页面,博客或简单的谷歌.

提前致谢

python django

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

Elasticsearch 与 Django:无法建立新连接:[Errno 111] 连接被拒绝),原因是:NewConnectionError

我尝试在 django 项目中迭代 elasticsearch。但是当我执行命令时python manage.py search_index --rebuild
出现了这个错误
elasticsearch.exceptions.ConnectionError: ConnectionError(<urllib3.connection.HTTPConnection object at 0x7fde186b2b50>: Failed to establish a new connection: [Errno 111] Connection refused) caused by: NewConnectionError(<urllib3.connection.HTTPConnection object at 0x7fde186b2b50>: Failed to establish a new connection: [Errno 111] Connection refused)

运行docker-compose后,我可以通过chrome访问elasticsearch http://localhost:9200。

这是setting.py文件:

INSTALLED_APPS = [
    'polls.apps.PollsConfig',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'django_elasticsearch_dsl',
]
ELASTICSEARCH_DSL={
    'default': {
        'hosts': 'localhost:9200'
    },
}
Run Code Online (Sandbox Code Playgroud)

和 document.py 文件:

from django_elasticsearch_dsl import Document
from django_elasticsearch_dsl.registries import registry

from .models import Question

@registry.register_document …
Run Code Online (Sandbox Code Playgroud)

django elasticsearch

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

断言失败时Python单元测试调用函数

目标:仅当测试失败时,我才需要调用一堆步骤(因此是一个函数)。

我尝试过的:

1)尝试传递不带参数的函数。

观察:如果测试通过,则不会调用函数。但如果测试失败,我会收到错误消息。(AssertionError: <bound method TestAuto.func1 of <test_fail.TestAuto testMethod=test_fail>>)

class TestAuto(unittest.TestCase):
    def test_fail(self):
        self.assertEqual(1, 1, self.func1)
    def func1(self):
        print 'We are inside'
if __name__ == '__main__':
    unittest.main()
Run Code Online (Sandbox Code Playgroud)

test_fail (test_fail.TestAuto) ... ok

----------------------------------------
Ran 1 test in 0.001s

OK
Run Code Online (Sandbox Code Playgroud)

2)尝试使用参数调用函数。

class TestAuto(unittest.TestCase):
    def test_fail(self):
        self.assertEqual(1, 1, self.func1('message'))
    def func1(self, msg):
        print msg
Run Code Online (Sandbox Code Playgroud)

观察:无论测试通过或失败,函数都会被调用。

结果:

test_fail (test_fail.TestAuto) ... 消息正常


在 0.001 秒内运行 1 次测试

好的

python unit-testing

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

Python:将两个值传递给filter中使用的函数

我做了一个过滤功能来过滤掉文件名列表中的文件类型.

>>> l1
['180px-Cricketball.png', 'AgentVinod_450.jpg', 'Cricketball.bmp', 'Django-1.4', 'Django-1.4.tar.gz', 'Firefox Setup 11.0.exe', 'I-Will-Do-The-Talking-Tonight-(Muskurahat.Com).mp3', 'kahaani-.jpg', 'Never gonna leave this bed.mp3', 'Piya-Tu-Kaahe-Rootha-Re-(Muskurahat.Com).mp3', 'pygame-1.9.1release', 'pygame-1.9.1release.zip', 'pygame-1.9.2a0.win32-py2.7.msi', 'python-2.7.2.msi', 'python-3.1.2.msi', 'Resume.doc', 'selenium-2.20.0', 'selenium-2.20.0.tar.gz', 'sqlite-shell-win32-x86-3071100.zip', 'wxdesign_220a.exe', 'YTDSetup.exe']
>>> def myfilt(subject):
    if re.search('.jpg',subject):
        return True


>>> filter(myfilt,l1)
['AgentVinod_450.jpg', 'kahaani-.jpg']
Run Code Online (Sandbox Code Playgroud)

这很好用.

现在假设我想让它更灵活.我想将文件类型传递给函数.所以我重写了这个功能

>>> def myfilt(subject,filetype):
    if re.search(filetype,subject):
        return True
Run Code Online (Sandbox Code Playgroud)

现在我如何通过过滤功能传递文件类型?

我试过了:

>>> filter(myfilt(l1,filetype),l1)

Traceback (most recent call last):
  File "<pyshell#32>", line 1, in <module>
    filter(myfilt(l1,filetype),l1)
  File "<pyshell#28>", line 2, in myfilt
    if re.search(filetype,subject):
  File "C:\Python27\lib\re.py", line 142, in search …
Run Code Online (Sandbox Code Playgroud)

python

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