python - numpy.array(object, dtype=None, *, copy=True, order='K', subok=False, ndmin=0, like=None)
问题描述
在NumPy 手册中,有些对象具有通配符作为参数,如本问题的标题所示。
首先,我不知道它在这种情况下意味着什么。
其次,当尝试重新定义函数时:
def array(object, dtype=None, *, copy=True, order='K', subok=False, ndmin=0, like=None):
if MODE == 'CPU':
return np.array(object, dtype, *, copy, order, subok, ndmin, like)
print (array([1,2,3]))
我得到错误:
File "test.py", line 18
return np.array(object, dtype, *, copy, order, subok, ndmin, like)
^
SyntaxError: invalid syntax
虽然我知道什么*args
或**kwargs
意思,但我不知道什么*
意思。用谷歌搜索这个并不能得到令人满意的结果。任何解释将不胜感激。
解决方案
事情是在调用 * 之后的所有值都必须带有参数的名称。
由于第三个参数未提供参数名称而导致错误的示例:
def f(a=1,b=2,*,c=3):
print(a)
print(b)
print(c)
f(1,2,3)
没有错误的示例:
def f(a=1,b=2,*,c=3):
print(a)
print(b)
print(c)
f(1,2,c=3)
这是类似的话题。
推荐阅读
- runtime - 如何在尖峰中跟踪动态指令(在 RISC-V 上)
- r - 根据单位列将重量转换为千克
- javascript - AfterAll Uncaught TypeError: localStorage.removeItem 不是抛出的函数
- angular - Tab contenteditable div 标记文本的开头
- sql - Oracle 解码与案例。查询返回不同的结果集
- nginx - 运行时错误:/usr/local/share/lua/5.1/resty/session.lua:183: loop or previous error loading module 'resty.session.ciphers.aes'
- android - 以干净的方式使用 kotlin 获取特定的 JSONObject
- python - 在python中计算逐行时间差
- typescript - Typescript:一种只允许实现相同接口的对象的类型
- node.js - 从源文件传递到目标文件的 es6 构造函数对象未定义