小编Joh*_*don的帖子

如何通过单个测试检查null/empty/whitespace值?

我想编写一个SELECT语句,它只使用一个测试来返回没有值的列(null,empty或所有空格).

我认为这会奏效:

SELECT column_name from table_name WHERE column_name NOT LIKE '%_%';
Run Code Online (Sandbox Code Playgroud)

但这对NULL值不起作用.

我当然可以补充一下

OR column_name IS NULL
Run Code Online (Sandbox Code Playgroud)

它会起作用,但我想要一种使用单一测试的方法.

sql oracle oracle10g

74
推荐指数
5
解决办法
26万
查看次数

如何在Django中呈现单个单选按钮选项?

如果我的模型包含带有RadioSelect小部件的ChoiceField,我如何在模板中单独渲染单选按钮?

假设我正在构建一个Web应用程序,允许公司的新员工在桌面上选择他们想要的计算机类型.这是相关的模型:

class ComputerOrder(forms.Form):
    name = forms.CharField(max_length=50)
    office_address = forms.Charfield(max_length=75)
    pc_type = forms.ChoiceField(widget=RadioSelect(), choices=[(1, 'Mac'), (2, 'PC')])
Run Code Online (Sandbox Code Playgroud)

在模板上,如何渲染Mac选择按钮?如果我这样做,它会呈现所有选择:

{{ form.pc_type  }}
Run Code Online (Sandbox Code Playgroud)

有点天真我试过这个,但它没有产生输出:

{{ form.pc_type.0 }}
Run Code Online (Sandbox Code Playgroud)

(我在SO上发现了一些类似的问题:

在Django表单中,如何呈现单选按钮以便在页面上分离选项?
Django Forms:如何迭代Django形式的字段选择

但我觉得他们没有好的答案.有没有办法复活旧问题?)

django django-templates

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

来自`in`运算符的意外结果 - Python

>>> item = 2
>>> seq = [1,2,3]
>>> print (item in seq)
True
>>> print (item in seq is True)
False
Run Code Online (Sandbox Code Playgroud)

为什么第二个print语句输出False

python

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

在Django表单中,如何呈现单选按钮以便在页面上分离选项?

我有一个带有双选单选按钮元素的Django表单.我希望表单呈现或多或少像这样:

( ) I prefer beer
     The last sporting event I attended was: [           ]
     My favorite NASCAR driver is:           [           ]

( ) I prefer wine
     The last opera/play I attended was:     [           ]
     My favorite author is:                  [           ]

换句话说,我想分开两个单选按钮选项.我怎么做?使用默认的form.as_table渲染,选项彼此相邻,我不想要.

(向NASCAR和歌剧爱好者道歉.)

forms django radio-button

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

使用 json 验证使用 python 显示 json 模式中的所有错误

我正在编写一个 Python 代码来验证 JSON 模式,但它没有显示其中的所有错误,仅显示第一个错误。任何人都可以帮助修复代码以显示所有错误。下面是代码:

from __future__ import print_function
import sys
import json
import jsonschema
from jsonschema import validate

schema = {
    "type" : "object",
    "properties" : {
        "price" : {"type" : "number"},
        "name" : {"type" : "string"},
    },
}

data = \
[
    { "name": 20, "price": 10},        
]

print("Validating the input data using jsonschema:")
for idx, item in enumerate(data):
    try:
        validate(item, schema)
        sys.stdout.write("Record #{}: OK\n".format(idx))
    except jsonschema.exceptions.ValidationError as ve:
        sys.stderr.write("Record #{}: ERROR\n".format(idx))
        sys.stderr.write(str(ve) + "\n")
Run Code Online (Sandbox Code Playgroud)

python validation json

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

如何判断 Django 会话是否是新会话?

在视图中,是否有一种简单的方法可以判断这是否是会话中的第一次命中?

我寻找了一些明显的东西,比如将 session-create-date 与 session-last-accessed-date 进行比较,但这些字段似乎不存在。

我可以在会话数据中设置一个自定义键,然后如果缺少键,则假定它是一个新会话,但我想知道是否有一些更简洁的方法。

谢谢!

django session

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

带有 autocommit=True 的 sqlalchemy 会话不提交

我正在尝试使用 autocommit=true 的会话在表中创建一行,但它似乎不起作用。该行不会保存到表中。

import os

import sqlalchemy
from sqlalchemy import Table
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker
from sqlalchemy import Column, create_engine, String

db_hostname    = os.environ['DB_HOSTNAME']
db_username    = os.environ['DB_USERNAME']
db_password    = os.environ['DB_PASSWORD']
db_servicename = os.environ['DB_SERVICENAME']

engine_string = f"postgresql://{db_username}:{db_password}@{db_hostname}:5432/{db_servicename}"

engine = create_engine(engine_string, isolation_level='REPEATABLE READ',
    poolclass=sqlalchemy.pool.NullPool
)

base = declarative_base()

class Testing(base):
    __tablename__ = 'testing'
    name = Column(String, primary_key=True)
    comment = Column(String)

base.metadata.create_all(engine)

S1 = sessionmaker(engine)
with S1() as session:
    test1 = Testing(name="Jimmy", comment="test1")
    session.add(test1)
    session.commit()

S2 = sessionmaker(engine, autocommit=True) …
Run Code Online (Sandbox Code Playgroud)

python sqlalchemy commit

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

使用 Python 的 Slim 发行版时,Mac M1 上的 Docker 中的 pip 安装出现错误

我有一个在 Docker 上运行的应用程序,它在我的旧的基于英特尔的 Mac 上运行良好。但是,在 M1 Mac 上,运行 docker-compose up 时出现 pip install 错误。例如

 asyncpg==0.24.0
 error: command 'gcc' failed: No such file or directory
Run Code Online (Sandbox Code Playgroud)

我的 Dockerfile 使用 python-slim ,它没有编译器,所以我明白为什么:

FROM python:3.10-slim

WORKDIR /src
COPY . ./
RUN pip install --upgrade pip
RUN pip install -r requirements.txt
Run Code Online (Sandbox Code Playgroud)

我想坚持使用 -slim 包。在 Mac M1 上实现此功能的最佳方法是什么?

谢谢!

python pip docker apple-m1

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

在我的 python 脚本中,为什么 rho 中的字母“r”存在语法错误

我正在尝试编写一个非常简单的脚本,但我几乎没有编码经验,我在我的计算机上下载了 numpy 和 matplotlib 以及所有这些内容,并在一些帮助下编写了这个脚本,但不知道为什么有这么多错误。我已经通过该网站的问题修复了其中的一些错误。

我尝试过缩短它,但不知道为什么它不起作用。它的第一条 rho 行一直给我语法错误

print("airplane");

import numpy as np

import matplotlib.pyplot as plt

g = 32.2  

rho = 0.00231  

S = 279  

W = 7000  

c0 = 928

c1 = 0.1

c2 = -0.002

d0 = 0.2

d1 = 0.0015

V0 = 0  

x0 = 0  

alpha0 = np.radians(-7)  

alpha_gr = np.radians(4)  

efficiency = 0.9  

lift_slope = np.radians(0.1167)  

max_lift_coef = 2.1  

dt = 0.05  


def thrust(V):

    return c0 + c1*V + c2*V**2



def drag_fuselage_tail(V):

    return d0*V …
Run Code Online (Sandbox Code Playgroud)

python

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

为什么允许独立代码块?

我最近被一个虫子咬了。我有这样的代码:

if (x == 1)
{
    do_stuff();
}
else
{
    do_other_stuff();
}
Run Code Online (Sandbox Code Playgroud)

但是,我错误地省略了单词else,因此始终执行第二个代码块。

允许此类独立代码块的基本原理是什么?我想有一个很好的理由。

javascript

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

当我事先不知道我想要哪些列时,如何编写SELECT语句?

我的应用程序有几个表:一个主OBJECT表,以及几个用于存储特定种类对象的表:CAT,SHOE和BOOK.

这是表格列的外观:

宾语

object_id    (primary key)
object_type  (string)
Run Code Online (Sandbox Code Playgroud)

cat_id       (primary key)
object_id    (foreign key)
name         (string)
color        (string)
Run Code Online (Sandbox Code Playgroud)

shoe_id      (primary key)
object_id    (foreign key)
model        (string)
size         (string)
Run Code Online (Sandbox Code Playgroud)

book_id      (primary key)
object_id    (foreign key)
title        (string)
author       (string)
Run Code Online (Sandbox Code Playgroud)

从用户的角度来看,每个特定对象主要由其名称标识,该名称是每个表的不同列.对于CAT表它的名称,对于SHOE表它的模型,对于BOOK表它的标题.

假设我在没有事先知道它代表什么样的物体 - 猫,鞋子或书籍的情况下交给了object_id.如何编写SELECT语句来获取此信息?

显然它看起来有点像这样:

SELECT object_type,name FROM object WHERE object_id = 12345;
Run Code Online (Sandbox Code Playgroud)

但是如何在"名称"列中获得正确的内容?

sql

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

当多个URL具有相同名称时使用django reverse()

我继承了一个Django应用程序,其中包含以下条目urls.py:

url(r'/abc$', 'app.views.foo', name='foo'),
url(r'/def$', 'app.views.foo', name='foo'),
url(r'^/something$|/other$', 'app.views.foo', name='foo'),
Run Code Online (Sandbox Code Playgroud)

因此,我不仅有几个名为'foo'的url模式,而且某些模式还包含可以匹配多个不同URL的正则表达式.

如果我使用反向('foo'),我会得到哪一个?

python django

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

使 while 循环更快的最佳方法是什么?

我有一个计算 1/n 之和的脚本。它可以在 20 分钟内完成 10.000.000.000。但我认为还可以更好。

while i <= n:
    b = 1/i
    h = h+b
    i = 1+i
Run Code Online (Sandbox Code Playgroud)

我实在想不出比从 scrapch 重写代码更好的方法了。任何建议都有帮助。

python while-loop

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