小编Jak*_*ake的帖子

CreateItem vs ItemGroup

在目标中创建项目有什么区别,如下所示:

<Target Name="DoStuff">
    <CreateItem Include="@(IntermediateAssembly)" >
        <Output TaskParameter="Include" ItemName="FileWrites"/>
    </CreateItem>
</Target>
Run Code Online (Sandbox Code Playgroud)

和这样:

<Target Name="DoStuff">
    <ItemGroup>
        <FileWrites Include="@(IntermediateAssembly)" />
    </ItemGroup>
</Target>
Run Code Online (Sandbox Code Playgroud)

你何时会使用其中一个,为什么?

msbuild

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

确定是否传递了命名参数

我想知道是否可以确定是否在Python中传递了具有默认值的函数参数.例如,dict.pop是如何工作的?

>>> {}.pop('test')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'pop(): dictionary is empty'
>>> {}.pop('test',None)
>>> {}.pop('test',3)
3
>>> {}.pop('test',NotImplemented)
NotImplemented
Run Code Online (Sandbox Code Playgroud)

pop方法如何确定第一次没有传递默认返回值?这是否只能在C中完成?

谢谢

python default-value named-parameters

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

使用Django的操作的默认参数

在正则表达式与django没有匹配的情况下,有没有办法将默认参数传递给一个动作?


urlpatterns = patterns('',(r'^test/(?P<name>.*)?$','myview.displayName'))

#myview.py
def displayName(request,name):
      # write name to response or something
Run Code Online (Sandbox Code Playgroud)

我已经尝试将urlpatterns中的第三个参数设置为包含'并且为name方法提供该方法的默认值的字典,但没有一个工作.name参数似乎总是为None.如果我可以设置默认值,我真的不想为None编码.

澄清:这是我正在改变它的一个例子.


def displayName(request,name='Steve'):
      return HttpResponse(name)
#i also tried

urlpatterns = patterns('',
      (r'^test/(?P<name>.*)?$',
        'myview.displayName',
        dict(name='Test')
      )
)
Run Code Online (Sandbox Code Playgroud)

当我将浏览器指向视图时,它会显示文本"无"

有任何想法吗?

python django django-urls

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