为什么这个字符串不会在每个"\n"上拆分?(红宝石)
"ADVERTISING [7310]\n\t\tIRS NUMBER:\t\t\t\t061340408\n\t\tSTATE OF INCORPORATION:\t\t\tDE\n\t\tFISCAL YEAR END:\t\t\t0331\n\n\tFILING VALUES:\n\t\tFORM TYPE:\t\t10-Q\n\t\tSEC ACT:\t\t1934 Act\n\t".split('\n')
>> ["ADVERTISING [7310]\n\t\tIRS NUMBER:\t\t\t\t061340408\n\t\tSTATE OF INCORPORATION:\t\t\tDE\n\t\tFISCAL YEAR END:\t\t\t0331\n\n\tFILING VALUES:\n\t\tFORM TYPE:\t\t10-Q\n\t\tSEC ACT:\t\t1934 Act\n\t"]
Run Code Online (Sandbox Code Playgroud) 现在已经摆弄了Python的multicore功能超过一个小时,试图使用Process和并行化一个相当复杂的图遍历函数Manager:
import networkx as nx
import csv
import time
from operator import itemgetter
import os
import multiprocessing as mp
cutoff = 1
exclusionlist = ["cpd:C00024"]
DG = nx.read_gml("KeggComplete.gml", relabel = True)
for exclusion in exclusionlist:
DG.remove_node(exclusion)
#checks if 'memorizedPaths exists, and if not, creates it
fn = os.path.join(os.path.dirname(__file__), 'memorizedPaths' + str(cutoff+1))
if not os.path.exists(fn):
os.makedirs(fn)
manager = mp.Manager()
memorizedPaths = manager.dict()
filepaths = manager.dict()
degreelist = sorted(DG.degree_iter(),key=itemgetter(1),reverse=True)
def _all_simple_paths_graph(item, DG, cutoff, memorizedPaths, filepaths):
source …Run Code Online (Sandbox Code Playgroud) 我正在尝试在newick格式化的树上翻译节点,而我在更换权限方面遇到了麻烦.说我有HashMap:
"(1:" : "(30:"
",1:" : ",30:"
"(30:" : "(6:"
",30:" : ",6:"
Run Code Online (Sandbox Code Playgroud)
而树:
(30:0.07,(1:0.06,2:0.76))
Run Code Online (Sandbox Code Playgroud)
传统智慧会暗示多重replaceAll,但这会带来一个问题:
replaceAll("(1:", "(30:") >> (30:0.07,(30:0.06,2:0.76))
replaceAll("(30:", "(6:") >> (6:0.07,(6:0.06,2:0.76))
Run Code Online (Sandbox Code Playgroud)
这里的问题是我们已经替换了之前被替换的节点.正确的树应如下所示:
(6:0.07,(30:0.06,2:0.76))
Run Code Online (Sandbox Code Playgroud)
现在我已经在Python中完成了这个:
def multiple_replace(taxa, text):
regex = re.compile("|".join(map(re.escape, taxa.keys())))
return regex.sub(lambda mo: taxa[mo.group(0)], text)
Run Code Online (Sandbox Code Playgroud)
但是我的Java实现遇到了问题:
private String convertTree (String treeOld, HashMap<String, String> conv) {
Pattern pattern = Pattern.compile("\\(\\d+:|,\\d+:");
Matcher matcher = pattern.matcher(treeOld);
StringBuilder sbt = new StringBuilder(treeOld);
while (matcher.find()) {
String replace = conv.get(matcher.group());
System.out.println(matcher.group() + "||" +replace + " || …Run Code Online (Sandbox Code Playgroud) 目前我的分页看起来像这样:

我正在尝试找出如何删除按钮之间的空间,但一直没有成功.在css文件中,我可以找到分页的唯一引用是:
jquery.dataTables.css(319 - 394):
}
.dataTables_wrapper .dataTables_paginate {
float: right;
text-align: right;
padding-top: 0.25em;
}
.dataTables_wrapper .dataTables_paginate .paginate_button {
box-sizing: border-box;
display: inline-block;
min-width: 1.5em;
padding: 0.5em 1em;
margin-left: 2px;
text-align: center;
text-decoration: none !important;
cursor: pointer;
*cursor: hand;
color: #333333 !important;
border: 1px solid transparent;
}
.dataTables_wrapper .dataTables_paginate .paginate_button.current, .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
color: #333333 !important;
background-color: white;
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, white), color-stop(100%, gainsboro));
/* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, white 0%, gainsboro 100%);
/* …Run Code Online (Sandbox Code Playgroud) 所以我从CRUD生成器复制了基本删除操作:
/**
* @Route("category/delete/{id}", name="category_delete")
* @Method("DELETE")
*/
public function deleteAction(Request $request, $id)
{
$repository = $this->getDoctrine()->getRepository('AppBundle:Category');
$category = $repository->find($id);
$form = $this->createDeleteForm($category);
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
$em = $this->getDoctrine()->getManager();
$em->remove($category);
$em->flush();
}
return $this->redirectToRoute('category_index');
}
/**
*
* @param Category $category
*
* @return \Symfony\Component\Form\Form The form
*/
private function createDeleteForm(Category $category)
{
return $this->createFormBuilder()
->setAction($this->generateUrl('category_delete', array('id' => $category->getId())))
->setMethod('DELETE')
->getForm()
;
}
Run Code Online (Sandbox Code Playgroud)
但是,我不确定如何实际使用动作本身.我想在两个地方删除,我不确定正确的方法:
<a href="{{ path('category_edit', {'id': cat.id}) …如果我QuerySet从以下命令创建:
data = ModelA.objects.values('date').annotate(total=Sum('amount'), average=Avg('amount'))
# <QuerySet [{'date': datetime.datetime(2016, 7, 15, 0, 0, tzinfo=<UTC>), 'total': 19982.0, 'average': 333.03333333333336}, {'date': datetime.datetime(2016, 7, 15, 0, 30, tzinfo=<UTC>), 'total': 18389.0, 'average': 306.48333333333335}]>
Run Code Online (Sandbox Code Playgroud)
是否可以使用从内部的每个哈希data创建ModelB对象QuerySet?
我意识到我可以迭代并解压缩QuerySet并像这样做:
for q in data:
ModelB.objects.create(date=q['date'], total=q['total'], average=q['average'])
Run Code Online (Sandbox Code Playgroud)
但是有更优雅的方式吗?当它们几乎处于bulk_create格式时,迭代和创建似乎是多余的.
所以我有一组按钮,我希望它们位于页面的右侧,但是justify-end/justify='end'不起作用v-row。
<!DOCTYPE html>
<html>
<head>
<link href="https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700,900" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/npm/@mdi/font@3.x/css/materialdesignicons.min.css" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/npm/vuetify@2.x/dist/vuetify.min.css" rel="stylesheet">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no, minimal-ui">
</head>
<body>
<div id="app">
<v-app>
<v-container>
<v-form>
<v-row justify='end'>
<v-col>
<v-btn>Button 1</v-btn>
<v-btn>Button 1</v-btn>
<v-btn>Button 1</v-btn>
</v-col>
</v-row>
</v-form>
</v-container>
</v-app>
</div>
<script src="https://cdn.jsdelivr.net/npm/vue@2.x/dist/vue.js"></script>
<script src="https://cdn.jsdelivr.net/npm/vuetify@2.x/dist/vuetify.js"></script>
<script>
new Vue({
el: '#app',
vuetify: new Vuetify(),
})
</script>
</body>Run Code Online (Sandbox Code Playgroud)
我看过这个问题,但是使用 text align 似乎很麻烦,我想知道是否有更好的解决方案?
我想做的是构建一个自定义版本,cache_page让我可以更好地控制缓存键,但我什至无法完成响应的基本缓存:
from django.core.cache import cache
from rest_framework import viewsets
from rest_framework.response import Response
from app import models
class BaseViewSet(viewsets.GenericViewSet):
queryset = models.Items.objects.all()
def get_queryset(self):
return models.Items.objects.all()
def list(self, request, **kwargs):
response = Response({})
cache.set('test', response, 10)
return response
Run Code Online (Sandbox Code Playgroud)
我的相关部分settings.py设置为:
REST_FRAMEWORK = {
'DEFAULT_RENDERER_CLASSES': [
'rest_framework.renderers.JSONRenderer',
],
'DEFAULT_VERSIONING_CLASS': 'rest_framework.versioning.NamespaceVersioning'
}
CACHES = {
"default": {
"BACKEND": "django_redis.cache.RedisCache",
"LOCATION": f"redis://127.0.0.1:6729/1",
},
}
Run Code Online (Sandbox Code Playgroud)
当我尝试调用端点时,我得到:
django.template.response.ContentNotRenderedError: The response content must be rendered before it can be pickled.
Run Code Online (Sandbox Code Playgroud)
然后,如果我将该行更改为:
cache.set('test', response.render(), …Run Code Online (Sandbox Code Playgroud) 我一直在学习有关嵌入表单集合的 Symfony 3 教程,并且我想将这个想法扩展到额外的嵌套级别。我环顾四周,有 Symfony 2 的部分答案,但没有任何全面的答案(也没有 3 的答案)。
如果我们的教程Task有很多Tag例子,我将如何编码它以便它扩展到:Task有很多Tag有很多SubTag?
到目前为止,我想我理解了 Form 类:
任务:
class TaskType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder->add('description');
$builder->add('tags', CollectionType::class, array(
'entry_type' => TagType::class,
'allow_add' => true,
'by_reference' => false,
'allow_delete' => true
));
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(array(
'data_class' => 'AppBundle\Entity\Task',
));
}
}
Run Code Online (Sandbox Code Playgroud)
标签:
class TagType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options) …Run Code Online (Sandbox Code Playgroud) 所以我已经知道我可以在preUpdate生命周期事件中对特定实体进行更改:
/**
* Captures pre-update events.
* @param PreUpdateEventArgs $args
*/
public function preUpdate(PreUpdateEventArgs $args)
{
$entity = $args->getEntity();
if ($entity instanceof ParentEntity) {
$changes = $args->getEntityChangeSet();
}
}
Run Code Online (Sandbox Code Playgroud)
但是,有没有办法同时获得任何相关实体的更改?例如,假设ParentEntity有这样的关系设置:
/**
* @ORM\OneToMany(targetEntity="ChildEntity", mappedBy="parentEntity", cascade={"persist", "remove"})
*/
private $childEntities;
Run Code Online (Sandbox Code Playgroud)
并且ChildEntity还有:
/**
* @ORM\OneToMany(targetEntity="GrandChildEntity", mappedBy="childEntity", cascade={"persist", "remove"})
*/
private $grandChildEntities;
Run Code Online (Sandbox Code Playgroud)
有没有办法让在所有相关的变化preUpdate的ParentEntity?
php ×3
symfony ×3
django ×2
javascript ×2
python ×2
associations ×1
css ×1
datatables ×1
django-redis ×1
doctrine-orm ×1
forms ×1
html ×1
java ×1
pagination ×1
prototype ×1
regex ×1
ruby ×1
string ×1
vue.js ×1
vuejs2 ×1
vuetify.js ×1