我正在尝试实现d3力布局,无法弄清楚如何以正确的方式定位链接的标记.
这是我到目前为止所得到的:
var links = force_data.force_directed_data.links;
var nodes = {};
// Compute the distinct nodes from the links.
links.forEach(function (link) {
link.source = nodes[link.source] || (nodes[link.source] = {name: link.source});
link.target = nodes[link.target] || (nodes[link.target] = {name: link.target});
});
console.log(nodes);
var width = 1000,
height = 1000;
var force = d3.layout.force()
.nodes(d3.values(nodes))
.links(links)
.size([width, height])
.linkDistance(300)
.charge(-120)
.friction(0.9)
.on("tick", tick)
.start();
var svg = d3.select("#force-graph").append("svg")
.attr("width", width)
.attr("height", height);
// Per-type markers, as they don't inherit styles.
svg.append("defs").selectAll("marker")
.data(["dominating"])
.enter().append("marker")
.attr("id", …Run Code Online (Sandbox Code Playgroud) 我目前正在使用Sphinx和autodoc插件为我的python包编写文档.对于函数返回值,我可以写例如:returns: int: count,告诉sphinx存在类型为int的返回值,命名为count.
我现在有一个函数,它让我的数据库中的项目的前辈:
def get_previous_release(release_id):
""" Holt Vorgängeritem eines Items mit der ID release_id
:param release_id: ID des items für das Release
:type release_id: int
"""
if not isinstance(release_id, int):
raise ValueError('get_previous_release expects an Integer value for the parameter release_id')
try:
release = my_queries.core.get_by_id(release_id)
except IndexError:
raise LookupError('The item with id {} could no be found'.format(release_id))
if 'Alpha-Release' in release.name:
release = AlphaRelease(release.key, release.name, release.state)
elif 'Beta-Release' in release.name:
release = BetaRelease(release.key, release.name, release.state)
elif '-Release' in …Run Code Online (Sandbox Code Playgroud) 我想使用setup.py从脚本导入的脚本,该脚本是必须安装的包的一部分。该脚本仅包含一个dict包含用于创建入口点的字符串的 。我没有在 中对它们进行硬编码,setup.py因为我想稍后从已安装的软件包中再次使用此列表。
只是为了清楚我的目录结构和重要文件:
PackageA
|_package_a
| |_models
| |_modules
| | |_do_query.py
| | |_...
| |_setup_cfg.py
| |_ __init__.py
| |_...
|_ __init__.py
|_setup.py
Run Code Online (Sandbox Code Playgroud)
__init__.py在package_a:
from .setup_cfg import setup_config
Run Code Online (Sandbox Code Playgroud)
setup_cfg.py:
setup_config = {
'scripts': [
'do_query'
]
}
Run Code Online (Sandbox Code Playgroud)
setup.py:
# -*- coding: utf-8 -*-
from setuptools import setup, find_packages
from .package_a import setup_config
with open('README.rst') as f:
readme = f.read()
with open('LICENSE') as f:
license = f.read() …Run Code Online (Sandbox Code Playgroud) 我有以下功能来测试:
my_package.db_engine.db_functions.py:
from ..utils import execute_cmd
from my_package.db_engine.db_functions import dbinfo
def dbinfo(db_name):
params = (cmd_cfg.DB, add_pj_suffix(db_name))
cmd = get_db_cmd_string(cmd_cfg.DBINFO, params=params)
cmd_result = execute_cmd(cmd)
result_dict = map_cmd_output_to_dict(cmd_result)
return result_dict
Run Code Online (Sandbox Code Playgroud)
此函数获取数据库的名称,然后从中构建命令字符串并像subprocess使用该execute_cmd方法一样执行此命令.我想在不实际执行的情况下测试此函数subprocess.我只想检查命令是否正确构建并正确传递给execute_cmd.因此我需要模拟execute_cmd从模块导入的方法utils.
我的文件夹结构如下:
my_project
|_src
| |_my_package
| | |_db_engine
| | | |_db_functions.py
| | | |_ __init__.py
| | |_utils.py
| | |_ __init__.py
| | |_ ....
| |_ __init__.py
|_tests
|_test_db_engine.py
Run Code Online (Sandbox Code Playgroud)
所以对于我的测试我尝试了以下内容test_db_engine.py:
import unittest
from …Run Code Online (Sandbox Code Playgroud) 在我们的团队中,我们有几个项目,每个项目都单独记录了sphinx.我们希望有一个中央文档页面,其中包含我们所有的项目.
当然,我们可以构建一个包含不同文档链接的html页面.
有没有办法将文件与Sphinx本身结合起来?也许有一个单独的文档项目,它以某种方式包含其他项目的文档?
我想触发几个不同的管道作业,具体取决于Controller Pipeline作业的输入参数.
在这个工作中,我构建了其他管道的名称,我想从列表中触发,从python脚本返回.
node {
stage('Get_Clusters_to_Build') {
copyArtifacts filter: params.file_name_var_mapping, fingerprintArtifacts: true, projectName: 'UpdateConfig', selector: lastSuccessful()
script {
cmd_string = 'determine_ci_builds --jobname ' + env.JOB_NAME
clusters = bat(script: cmd_string, returnStdout: true)
output_array = clusters.split('\n')
cluster_array = output_array[2].split(',')
}
echo "${clusters}"
}
jobs = Hudson.instance.getAllItems(AbstractProject.class)
echo "$jobs"
def builders = [:]
for (i=0; i<cluster_array.size(); i++) {
def cluster = cluster_array[i]
def job_to_build = "BuildCI_${cluster}".trim()
echo "### branch${i}"
echo "### ${job_to_build}"
builders["${job_to_build}"] =
{
stage("${job_to_build}") {
build "${job_to_build}"
}
}
}
parallel …Run Code Online (Sandbox Code Playgroud) 问题如下:
您有n个行程长度(以km为单位),应在m天之间进行划分,以使每天最大长度总和最小化.例如,在3天内划分的行程长度[1,5,2,6,8,3,2]导致[1,5,2] [6] [8,3,2]因为最大日长度总和是我们能达到的最低点.
是否有一种描述处理这种问题的算法?我遇到了bin包装和背包问题,但没有一个能解决我的问题.我可以想象它可能是对bin包装的一点修改但是没有得出结论.
我创建了一个Scrapy蜘蛛。但我想将其作为脚本运行。我该怎么做。现在,我可以在终端中通过以下命令运行:
$ scrapy crawl book -o book.json
Run Code Online (Sandbox Code Playgroud)
但是我想像一个简单的python脚本一样运行它
我的问题是我从数据库中收到一堆完整的内联svg字符串,如下所示:
<svg width="640" height="480" xmlns="http://www.w3.org/2000/svg">
<!-- Created with SVG-edit - http://svg-edit.googlecode.com/ -->
<g>
<title>Layer 1</title>
<path d="m213,174c-1,0 0.93744,4.0507 5,9c15.7598,19.19971 42.15933,40.96863 87,46c41.73807,4.68324 91.75034,-15.54512 112,-41c23.49255,-29.53134 36.13748,-73.41833 14,-96c-33.4342,-34.10505 -95.63815,-20.07648 -149,16c-43.49094,29.40303 -72.81625,61.12003 -83,114c-6.24055,32.40456 16.74812,59.13785 36,65c37.61407,11.45343 70.11282,-8.38123 85,-30c20.052,-29.11902 25.62744,-81.34587 2,-96c-56.33228,-34.93816 -148.52351,-14.6879 -180,-4c-15.29767,5.19435 -26.60644,10.5387 -28,13c-2.03145,3.58792 -1,7 -1,12l2,5l14,8" id="svg_3" stroke-width="5" stroke="#000000" fill="#7fff00"/>
<path d="m316,134c-62,-30 -126.71272,-58.6663 -180,-88c-12.1703,-6.69953 -20.4588,-10.30656 -21,-9c-2.67879,6.46715 1.96343,18.00821 4,27c2.94713,13.01208 2.5971,18.59676 7,27c2.32053,4.42889 12.9695,11.11737 32,16c27.95625,7.1727 38,10 54,12c8,1 11.23318,-1.93299 14,-12c2.18535,-7.95136 3.35251,-14.97251 -1,-16c-9.73248,-2.29753 -34.42769,3.96417 -50,11c-15.49211,6.9996 -15,18 -7,31l16,9l34,13" id="svg_4" stroke-width="5" stroke="#000000" fill="#003f7f"/>
<path d="m545,160c-75,-19 -106.09659,-19.87175 -136,-23c-28.13077,-2.94281 -43,-8 -46,-10c-3,-2 -3.87857,-4.49346 -7,-5c-4.93542,-0.80091 -12.43283,5.65108 …Run Code Online (Sandbox Code Playgroud) 我想检查另一个字典中是否有至少一个来自给定字典的密钥.我已经知道如何检查"必须"这样的键:
valid_data = []
needed_keys = (key1, key2)
for d in data:
if not all(key in d for key in needed_keys):
continue # ignore invalid object
valid_data.append(d)
Run Code Online (Sandbox Code Playgroud)
数据在这里是一个dicts列表.使用此代码,只有包含key1和key2的项目才会附加到valid_data.
是否有类似的东西:
if not any(key in d for key in needed_keys)
Run Code Online (Sandbox Code Playgroud)
如果所需的密钥中有任何密钥可用,它也会成功吗?
我正在尝试在django sqlite db中实现搜索.
我得到一个未知长度的参数列表,它们都应该与'LIKE'匹配.这意味着我希望所有与至少一个参数匹配的对象.
正如我从django文档中看到的那样,我可以通过使用Q对象来实现.
例:
Students.objects.get(
Q(name_contains='franz') |
Q(birthdate_date=date(2005, 5, 2) |
Q(param3_contains='lorem'
)
Run Code Online (Sandbox Code Playgroud)
现在我的问题是,如何处理它以加入从params创建的所有Q对象作为参数传递给objects.get().我找不到这个.
这里的另一个问题是处理几种不同的Field Lookup类型.
我感谢您提供的任何建议,帮助或帮助链接.谢谢.
我觉得我错了.我在列表的深度递归,好像它是一棵树.这会导致问题,因为它是一个任意列表,可以有字符串,整数......这就是我所拥有的
def visit_depth(list_, depth):
if depth == 0:
return 1
elif depth >0:
return sum([visit_depth(l, depth - 1) for l in list_])
else:
return 0
Run Code Online (Sandbox Code Playgroud) python ×6
javascript ×2
python-3.x ×2
algorithm ×1
bin-packing ×1
css ×1
d3.js ×1
dictionary ×1
django ×1
django-q ×1
docstring ×1
force-layout ×1
groovy ×1
jenkins ×1
join ×1
list ×1
mocking ×1
querying ×1
recursion ×1
scale ×1
scrapy ×1
setup.py ×1
svg ×1
templates ×1
unit-testing ×1
validation ×1
web-scraping ×1