小编Kry*_*ček的帖子

docker中的Python – RuntimeError:无法启动新线程

我自己无法调试一个错误。我在 Fedora 版本 35(三十五)上的 docker 镜像中运行 python 3.8.12,但无法从 python 生成线程。传输需要boto3并行运行,并且它用来concurrent.features这样做。

在没有任何依赖关系的情况下复制我的问题的最简单的示例是(从 python 文档复制

import concurrent.futures
import urllib.request

URLS = ['http://www.foxnews.com/',
        'http://www.cnn.com/',
        'http://europe.wsj.com/',
        'http://www.bbc.co.uk/',
        'http://some-made-up-domain.com/']

def load_url(url, timeout):
    with urllib.request.urlopen(url, timeout=timeout) as conn:
        return conn.read()

with concurrent.futures.ThreadPoolExecutor(max_workers=5) as executor:
    future_to_url = {executor.submit(load_url, url, 60): url for url in URLS}
    for future in concurrent.futures.as_completed(future_to_url):
        url = future_to_url[future]
        try:
            data = future.result()
        except Exception as exc:
            pass
Run Code Online (Sandbox Code Playgroud)

遗憾的是这些行的输出是

Traceback (most recent call last):
  File "<stdin>", line 2, …
Run Code Online (Sandbox Code Playgroud)

python concurrency multithreading docker

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

如何在 Django 的一个 url 地址中调用多个视图?

我正在尝试在 index.html 上显示由 new_measurement 定义的表单,但我只能设法开始IndexView()工作。我尝试了IndexView()和之间的各种组合new_measurement(),但这些都没有奏效。我知道这IndexView()不会传递任何与 相关的东西new_measurement()new_measurement()也不会被调用,这是我问题的核心。如果有对 Django 更有经验的人能告诉我我能做什么或应该做什么,我将不胜感激。谢谢你。

这是我的views.py

from django.shortcuts import render
from django.utils import timezone
from .models import Measurement
from .forms import MeasurementForm
from django.views import generic


class IndexView(generic.ListView):
    model = Measurement
    context_object_name = 'measurement_list'
    template_name = 'index.html'
    queryset = Measurement.objects.all()


def new_measurement(request):
    if request.method == "POST":
        form = MeasurementForm(request.POST)
        if form.is_valid():
            measurement = form.save(commit=False)
            measurement.measurement_date = timezone.now()
            measurement.save()
    else:
        form = MeasurementForm()

    return …
Run Code Online (Sandbox Code Playgroud)

python django django-urls django-views

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

模拟 Django 模型类时无法重定向

我在这里有一个视图,它List向数据库添加一个新的并重定向到List页面。我已经get_absolute_url在模型类中进行了配置。它似乎完美地工作。

def new_list(request):
    form = ItemForm(request.POST)

    if form.is_valid():
        list_ = List()
        list_.owner = request.user
        list_.save()
        form.save(for_list=list_)
        return redirect(list_)
    else:
        return render(request, 'home.html', {'form': form})
Run Code Online (Sandbox Code Playgroud)

但是当我尝试使用patchfrom模拟模型类和表单类时会出现问题unitest.mock

class TestMyLists(TestCase):

    @patch('lists.views.List')
    @patch('lists.views.ItemForm')
    def test_list_owner_is_saved_if_user_is_authenticated(
        self, mockItemFormClass, mockListClass
    ):
        user = User.objects.create(email='a@b.com')
        self.client.force_login(user)
        self.client.post('/lists/new', data={'text': 'new item'})
        mock_list = mockListClass.return_value
        self.assertEqual(mock_list.owner, user)
Run Code Online (Sandbox Code Playgroud)

当我运行测试时,我收到如下错误:

Traceback (most recent call last):
File "/home/sjsakib/.virtualenvs/superlists/lib/python3.6/site-packages/django/core/handlers/exception.py", line 35, in inner
  response = get_response(request)
File "/home/sjsakib/.virtualenvs/superlists/lib/python3.6/site-packages/django/core/handlers/base.py", line 128, in _get_response
  response = …
Run Code Online (Sandbox Code Playgroud)

python django tdd mocking python-unittest

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

用计时器绘图不起作用

我在使用Java绘图时遇到问题.我认为我的代码是正确的,但是当我用计时器循环它时,它不会打印任何东西.我想每秒重复一次doDrawing(g)方法.现在它只打印文本prom system.out但没有绘图.

package src;

import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Calendar;
import javax.swing.JPanel;
import javax.swing.Timer;

public class surface extends JPanel{

private void doDrawing(Graphics g){
    Graphics2D g2d = (Graphics2D) g;
    g2d.setColor(Color.black);

    //souradnice stredu ciferniku
    final int sx = 250;
    final int sy = 250;

    // inicializace promennych
    int uhel = 0;
    int delka = 150;
    int xHodina,xMinuta,xSekunda,
        yHodina,yMinuta,ySekunda;


    // získání aktuálního ?asu
     int HOUR = Calendar.getInstance().get(Calendar.HOUR);
     int MINUTE = Calendar.getInstance().get(Calendar.MINUTE) + 1;
     int SECOND = Calendar.getInstance().get(Calendar.SECOND) …
Run Code Online (Sandbox Code Playgroud)

java swing timer awt draw

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