
Denis
01.12.2016
19:41:08
def gen(a, l):
if len(l) == len(a):
print(*l)
return
for i in range(a[len(l)] + 1):
l.append(i)
gen(a, l)
l.pop()
>>> gen([1, 3], [])
0 0
0 1
0 2
0 3
1 0
1 1
1 2
1 3

Alexey
01.12.2016
20:19:33
Привет есть у кого-нибудь варианты и ссылке на литературу по пайтону? Уровень между начальным и средним?

53r63rn4r
01.12.2016
20:32:10

Google

Mechanicus
01.12.2016
20:32:10
https://telegram.me/ru_python_books

53r63rn4r
01.12.2016
20:32:20
Ну или так, да

Дмитрий
01.12.2016
21:16:55

Gleb
01.12.2016
23:10:16
Кто в ткинтере силен?
пообщаться нужно)

Lisa
01.12.2016
23:26:01
посоветуйте плз элегантное решение. нужно проверять наличие нескольких элементов в неком списке, и если какой-то из них таки найдется - дальше его совать в другой список. типа if x or y in list: ...
если нашелся x - дальше должна быть операция с x, если y - соответственно, с y. в уме бродят лямбды, но не могу оформить эти мысли :)

Maksim
01.12.2016
23:58:43
Доброе время суток
Есть такая потребность узнать оканчивается ли число на 1, но не делиться на 11
Как это сделать?

.
02.12.2016
00:00:03
проверяй сначала делимость
потом дели на 10 и смотри остаток

Maksim
02.12.2016
00:00:54
Делимость на 11?

.
02.12.2016
00:02:00
ну равен ли остаток нулю при делении на 11

Google

Maksim
02.12.2016
00:04:25
Ок, а на 10 неравно?

.
02.12.2016
00:05:06
а при делении на 10 тебе нужно, чтобы остаток был равен 1

Anton
02.12.2016
00:05:10
а на 10 делишь, получаешь остаток, это и есть последняя цифра, тебе надо == 1

Maksim
02.12.2016
00:05:44
Спасибо, уже голова не варит просто)

Pavel
02.12.2016
02:31:51
Хозяйке на заметку. Число делится на 11, если разность суммы цифр, стоящих на чётных местах, и суммы цифр, стоящих на нечётных местах, делится на 11.

Zart
02.12.2016
02:50:22
зачем мудрить с суммами цифр..

Pavel
02.12.2016
02:53:32

Zart
02.12.2016
02:53:40
ну ок
гм, мой вариант для лизы не подходит таки, бо нужен не только факт, но и значение
можно заменить any+map на фильтр

Anton
02.12.2016
04:02:07
121 например

Zart
02.12.2016
04:02:48
ноль делится на 11

Pavel
02.12.2016
04:02:55

Anton
02.12.2016
04:03:53
но он и на что угодно делится, и кратен всему кроме нуля

Zart
02.12.2016
04:04:13
ну и что?

Илья
02.12.2016
04:18:30
Подскажите. У меня почему то не тот шаблон загружается в Джанге. Вместо new_post.html загружается main.html и то даже он как то не полностью загружается.
views
```from django.http import HttpResponse
from django.shortcuts import render
from django.shortcuts import redirect
from blog.models import *
def index_page(request):
posts = Posts.objects.all()
return render(request, 'main.html', locals())
def new_post(request):
return render(request, 'new_post.html')``
url
from django.conf.urls import url
from django.contrib import admin
from .views import *
urlpatterns = [
url(r'^$', index_page, name='main_page'),
url(r'^new_post/$', new_post, name='new_post')
]

Google

Yuryhalf
02.12.2016
04:19:27
def index_page(request):
posts = Posts.objects.all()
return render(request, 'main.html', locals())
WTF?))))

Илья
02.12.2016
04:19:44
?

Pavel
02.12.2016
04:30:01


Илья
02.12.2016
04:30:44
Нет
{% load staticfiles %}
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<link rel="stylesheet" href="{% static 'css/index.css' %}">
<title>Главная страница</title>
</head>
<body>
{% block head %}
<div class="top">
<div class="logo">
My Super Puper Blog epta
</div>
<div class="menu">
<a href="">Регистрация </a>
<span>/</span>
<a href=""> Авторизация</a>
</div></div>
{% endblock %}
<div class="content">
{% for post in posts %}
<a href="">{{ post.title }}</a>
<p>{{ post.text }}</p>
<span>Автор: {{ post.author }}</span>
<p></p>
<hr>
{% endfor %}
</div>
</body>
</html>
mainhtml
new_post
{% extends "main.html" %}
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Новый пост</title>
</head>
<body>
{% block head %}
{% endblock %}
</body>
</html>


Pavel
02.12.2016
04:39:50
И extends

Илья
02.12.2016
04:40:29
Печально

Pavel
02.12.2016
04:41:34
Печально
А нет погоди. С телефона плохо видно

Илья
02.12.2016
04:41:44
xd

Илья
02.12.2016
04:42:26
Могу скрины кинуть если так удобней будет

Pavel
02.12.2016
04:42:50

Илья
02.12.2016
04:43:04
Эт уже не ком не:D

Pavel
02.12.2016
04:47:51
Всё неправильно. У тебя extends и block вывернуты на изнанку. Ты в базовом шаблоне должен определить все блоки и структуру страницы, а во всех остальных шаблонах переопределять какие-то из них.

Илья
02.12.2016
04:50:33
Уф
Во
Вроде получилось
Но чет хз че я сделал

Google

Pavel
02.12.2016
05:17:57
Но чет хз че я сделал
Extends работает очень просто - он берет весь базовый шаблон как есть и заменяет блоки, определённые в наследуемом шаблоне.

Илья
02.12.2016
05:27:44
Ой в попу это наследвание

Pavel
02.12.2016
05:34:43

Илья
02.12.2016
05:35:02
Я вот щя почитал
Вроде понял
как все это
Но теперь не понимаю для чего это

Pavel
02.12.2016
05:36:19

Igor
02.12.2016
05:37:38
для того, чтобы базовые штуки типа стилей были в одном файле, но использовались во всех остальных, дочерних, шаблонах
и чтобы страницы шаблонов типа "о нас", "контакты", "новости" (на примере визитки), содержали хуй да нихуя - {% extends "base.html" %}, {% block content %}вот тебе и новости{% endblock %}. и не надо там больше ничего)

Admin
ERROR: S client not available

Илья
02.12.2016
05:38:52
Ну вот я так и понимал что для этих целий наследование, но само применение че то не дается мне
сука

Igor
02.12.2016
05:39:16
не привык / тупишь, пройдет

Pavel
02.12.2016
05:39:21

Илья
02.12.2016
05:39:38
Надеюсь пройдет хД
Я сейчас просто блог пишу, практикую полученные знания типа

Pavel
02.12.2016
05:40:47

Igor
02.12.2016
05:41:24
ага, и найдет такого верстальщика, который будет отдавать чистый html, и не лезть в шаблонизаторы

Илья
02.12.2016
05:41:37
Да сверстать то я и сам могу

Pavel
02.12.2016
05:44:02

Google

Igor
02.12.2016
05:44:22
да не сомневаюсь, я про обратное говорил )

ThePanaceya
02.12.2016
05:53:58

Ilya
02.12.2016
06:59:44
Привет, сообщество. В общем есть ресурс с лимитами коннектов и так далее, хочу построить очередь запросов к нему, но необходима так же переформировывать очередь, если запрос с пометкой супер-важно. Проблема в ребите в том что мне очень важна единственость выполнения, чтобы не тратить конектов. Причем паблишеров запросов более одного.

Pavel
02.12.2016
07:03:47

Ilya
02.12.2016
07:11:41


Cykooz
02.12.2016
07:17:52
Можно конечно настроить Exchange так, что он будет копировать сообщения в разные очереди, и тогда да - одна по сути таска будет выполнятся несколько раз.
Но это явно не дефолтное поведение.
Скорее всего у вас просто в очередь добавляется несколько сообщений, которые запускают одну и туже таску, которая тратит "лимит конектов". Если вы этого не хотите, то есть два варианта
- выделить для этой задачи отдельную очередь и запустить для этой очереди только один воркер
- запилить локи на чём получится (редис, монга, etcd и т.д.) и перед стартом таски пробовать этот лок "взять", если не получилось - ставить таску на retry (можно с какой нить задержкой)
Первое проще сделать, но сложнее поддерживать в случае если у вас много серверов - надо как то контролировать, что нужный воркер запущен, и запущен в единственном экземпляре на весь кластер.


Zart
02.12.2016
07:35:58
две минуты отвисал от слова "ребит". думал re-beat

Roman
02.12.2016
07:36:07
кто-нибудь юзал
peewee_migrate
?
from peewee_migrate import Router
ImportError: cannot import name 'Router'
Ошибку выдает, в гугле на совсем другое ссылается

Zart
02.12.2016
07:36:32

Roman
02.12.2016
07:37:05
Requirements
может из-за того, что у меня 3.5?

Zart
02.12.2016
07:43:54
может ты, блядь, прочитаешь ошибку?
какое отношение отсутствие имени Router в пакадже имеет к версии питона?

arisu
02.12.2016
07:44:29
Нет

Roman
02.12.2016
07:45:03
не может имя роутер импортировать

Zart
02.12.2016
07:45:03
либо ты импорт неверно написал и импортируешь либо не то, либо не оттуда
или же либу переделали и возможно ты пытаешься использовать старый апи - надо тогда смотреть историю изменений
Эта группа больше не существует