如果我在Python中定义以下自定义类:
class Test:
hey = 'ho'
yo = 'go'
fo = 'sho'
Run Code Online (Sandbox Code Playgroud)
有没有办法使用字符串format()方法只需要传入我的对象一次,然后在所有参数中访问它.理想情况下,我希望能够做到这样的事情:
test_class = Test()
print "Hey {0.hey}, let's {1.yo}. Fo' {2.sho}".format(test_class)
Run Code Online (Sandbox Code Playgroud)
但我必须这样做:
test_class = Test()
print "Hey {0.hey}, let's {1.yo}. Fo' {2.sho}".format(test_class, test_class, test_class)
Run Code Online (Sandbox Code Playgroud) 有人可以解释为什么这段代码虽然有效,但却使 mypy 静态分析器以多种方式抱怨:
ranges = dict()
ranges['max'] = 0
ranges['services'] = []
ranges['services'].append('a')
Run Code Online (Sandbox Code Playgroud)
即:
ranges = dict()
ranges['max'] = 0
ranges['services'] = []
ranges['services'].append('a')
Run Code Online (Sandbox Code Playgroud)
如果我简单地向初始变量添加类型提示,ranges: dict = dict()它就可以正常工作。
我很困惑为什么静态分析器不能自己解决这个问题,特别是当我dict在第一个实例中使用关键字来初始化字典时。
在 PHP 中,我经常使用array_column()函数,因为它允许我从一个数组中的特定列中检索值,在一个漂亮的数组中返回自己,例如,使用这个数组:
$users = [
[
'id' => 1,
'name' => 'Peter'
],
[
'id' => 2,
'name' => 'Paul'
],
[
'id' => 3,
'name' => 'John'
]
];
Run Code Online (Sandbox Code Playgroud)
做array_column($users, 'name')将返回:
Array
(
[0] => Peter
[1] => Paul
[2] => John
)
Run Code Online (Sandbox Code Playgroud)
自从过渡到 Python 后,我仍然没有找到一个内置函数,我可以用它在 a listof dicts上做同样的事情。
这样的功能是否存在,如果不存在,实现这一目标的最佳方法是什么?
我想在条件语句中添加一个类别列表,我应该如何添加多个类别ID?使用像123,124,125或123 || 124
我有一个很大的类别列表,所以我正在寻找最简洁的方法来实现这一目标
谢谢
<?php
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$product = $objectManager->get('Magento\Framework\Registry')->registry('current_product');
$categories = $product->getCategoryIds(); /*will return category ids array*/
foreach($categories as $category){
$cat = $objectManager->create('Magento\Catalog\Model\Category')->load($category);
echo $cat->getId();
}
?>
<?php if($cat->getId()==123): ?>
<?php echo $block->getLayout()->createBlock('Magento\Cms\Block\Block')->setBlockId('myblockid')->toHtml();?>
<?php endif; ?>
Run Code Online (Sandbox Code Playgroud) 我发现为了使我的一个包正常工作,我必须添加media="print"到链接,如下所示:
<link rel="stylesheet" href="my_href" media="print">
Run Code Online (Sandbox Code Playgroud)
但它有什么media="print"作用呢?