我是python的新手,对我来说,我经历过奇怪的行为.我有两个文件:foo.py和test.py
test.py:
from foo import Foo
f = Foo()
f.bar(1)
Run Code Online (Sandbox Code Playgroud)
当我的foo.py看起来像这样:
class Foo:
def bar(n):
print n
Run Code Online (Sandbox Code Playgroud)
我收到错误消息:
Traceback (most recent call last):
File "test.py", line 3, in <module>
f.bar(1)
TypeError: bar() takes exactly 1 argument (2 given)
Run Code Online (Sandbox Code Playgroud)
当我的foo.py看起来像这样:
class Foo:
def bar(x,n):
print n
Run Code Online (Sandbox Code Playgroud)
我得到结果:
1
Run Code Online (Sandbox Code Playgroud)
这是为什么?为什么我需要声明两个参数,即使我想要只有一个方法?谢谢
我收到了错误:output or inout port "Qout" must be connected to a structural net expression.我评论了以下代码中出现错误的行(代码被修剪/压缩).我搜索了一个答案,似乎我无法将一个输入/输出端口分配给reg.我认为一种解决方案是将Q更改为线路,但Q是我的eightBitRegister模块中的always-block的一部分,因此它必须是reg.我怎样才能解决这个错误?
`timescale 1ns / 1ns
module lab4_3(SW, KEY, LEDR);
input [9:0] SW;
input [3:0] KEY;
output [7:0] LEDR;
eightBitRegister eight1(
.DATA_IN(SW[7:0]),
.parallelloadn(KEY[1]),
.rotateRight(KEY[2]),
.clock(KEY[0]),
.reset(SW[9]),
.Q(LEDR[7:0])
);
endmodule
module eightBitRegister(DATA_IN, parallelloadn, rotateRight, reset, clock, Q);
input [7:0] DATA_IN;
input parallelloadn;
input rotateRight;
input reset;
input clock;
output[7:0] Q;
register reg0(.Qout(Q[0]), //GETTING ERROR HERE
.right(Q[1]),
.left(Q[7]),
.D(DATA_IN[0]),
.loadleft(rotateRight),
.loadn(parallelloadn),
.clk(clock),
.rst(reset));
reg [7:0] Q;
always @(*)
begin …Run Code Online (Sandbox Code Playgroud) 所以想象一下,如果我有这个模块声明
module MyModule
(FavoriteList
,empty
,insert
,delete
)where
data FavoriteList a = L [a]
empty :: FavoriteList a
empty = FavoriteList []
Run Code Online (Sandbox Code Playgroud)
出于某种原因,超出了我在Haskell中的经验,这不会编译,有时它会说Data构造函数不在范围内,当我在代码中移动它时,它表示在空函数的输入中存在解析错误.有帮助吗?
编辑:
)where
data FavoriteList a = L [a]
empty :: FavoriteList a
empty = FavoriteList []
Run Code Online (Sandbox Code Playgroud) 为了学习argparse模块,我从官方文档站点复制了一些代码.
import argparse
parser = argparse.ArgumentParser(description='Process some integers.')
parser.add_argument('integers', metavar='N', type=int, nargs='+',
help='an integer for the accumulator')
parser.add_argument('--sum', dest='accumulate', action='store_const',
const=sum, default=max,
help='sum the integers (default: find the max)')
args = parser.parse_args()
print (args.accumulate(args.integers))
Run Code Online (Sandbox Code Playgroud)
但是当我打字的时候
python argparseTesting.py
Run Code Online (Sandbox Code Playgroud)
在命令行中,出现以下错误:
test
case
with
strings
0
1
2
3
0
1
2
3
At Index 0 of our array, we have pens
At Index 1 of our array, we have staplers
At Index 2 of our array, we have flame-throwers
At Index 3 …Run Code Online (Sandbox Code Playgroud) 我花了几个月的时间学习Ruby,现在我正在尝试构建一个韩语/朝鲜语/英语词典类型的东西.我正在给它一个包含所有单词的文本文件.
到目前为止我有:
module Dictionary
DICTIONARY = []
end
class File
include Dictionary
def self.convert(file)
readlines(file).each do |line|
south, north, meaning = line.split(',')
DICTIONARY << { :south => south, :north => north, :meaning => meaning }
end
end
end
File.convert("dictionary.txt")
Dictionary::DICTIONARY.sort_by { |word| word[:north] }.each do |word|
puts "#{word[:south]} is #{word[:north]} in North Korean. They both mean #{word[:meaning]}"
end
Run Code Online (Sandbox Code Playgroud)
我的问题是:
1)我不必为阵列制作单独的模块吗?(我主要是尝试在模块和类中进行混合)
2)正确使用数组的常量吗?我想我的思维过程就是我希望从外面访问数组,但老实说我真的不知道我在做什么.
提前致谢.
我正在使用hookDisplayAdminProductsExtra挂钩.这是1.6 prestashop版本的工作.但对于1.7不起作用.
这是我的代码
public function hookDisplayAdminProductsExtra($params)
{
$this->smarty;
$id_product = Tools::getValue('id_product');
$get_values = $this->getProductCurrencyRow($id_product);
$this->smarty->assign('get_values',$get_values);
$this->smarty->assign('id_product',$id_product);
$currencies = $this->getDefaultRates();
$this->smarty->assign('currencies',$currencies);
return $this->display(__FILE__, '/views/templates/admin/productcurrency.tpl');
}
Run Code Online (Sandbox Code Playgroud)
但是,当我安装我的插件prestashop版本1.7我有一些关于管理产品的问题额外钩这里是从1.7截图
新选项卡是模块选项名称,它不会听到产品选项菜单.hookDisplayAdminProductsExtra更改了新版本?我该怎么办?
谢谢.
我试图模块化我的代码并将控制器移动到使用相同模块的单独文件中.但是,它没有加载,我确保加载顺序是正确的.
// app.js
angular.module("app", []);
// LoginCtrl.js
angular.module("app", []).controller("LoginCtrl", function()
{
//doSomeThing
});
Run Code Online (Sandbox Code Playgroud)
如果我在第一个文件中执行var app = angular.module并在其他文件中使用相同的变量,它就可以工作.
// app.js
var app = angular.module("app", []);
// LoginCtrl.js
app.controller("LoginCtrl", function()
{
//doSomeThing
});
Run Code Online (Sandbox Code Playgroud)
如果我将所有代码移动到一个文件中并分别对每个组件使用angular.module,它就可以工作.
// app.js
angular.module("app", []);
angular.module("app", []).controller("LoginCtrl", function()
{
//doSomeThing
});
Run Code Online (Sandbox Code Playgroud)
我错过了什么吗?
javascript module controllers angularjs angularjs-controller
我有一个摇篮根项目P有两个子项目P:foo和P:bar。自然地,Gradle按照字母顺序构建它们:bar,foo。但是foo当我gradle build在P根目录中说时,我需要首先构建。这是因为bar取决于foo发布到本地Maven存储库的AAR(Android库)工件。这两个bar和foo是这样的Android库项目。
这看起来像是一个简单的问题,但我无法弄清楚。我读到有关内容evaluationDependsOn,因此在bar/build.gradle第一行中说:evaluationDependsOn "foo:"。las,这似乎没有任何作用。这个Gradle功能最终会被破坏吗?
使用compile project,我可以强制foo首先构建,但是那会直接将编译后的类添加到bar,我不需要。
所以我被卡住了。我可以重命名foo为aaa_foo,所有问题都将消失,但我犹豫称其为解决方案。
如何出售节点模块?
我需要将CMS插件发布到NPM,并允许用户安装它们,因此可以向其中一些付费。
我该怎么做?
我有一个模块AppModule和另一个模块说FooModule.我有一些组件FooModule和我正在加载的路线FooModule中AppModule像任何正常的应用程序会做.
以下是示例代码AppModule:
import { NgModule } from '@angular/core';
import { RouterModule } from '@angular/router'
import { BrowserModule } from '@angular/platform-browser';
import { AppComponent } from 'app/components/app';
@NgModule({
imports: [
BrowserModule,
RouterModule.forRoot([
{
path: 'foo',
loadChildren: './foo.module#FooModule'
}
])
],
declarations: [AppComponent],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule {}
Run Code Online (Sandbox Code Playgroud)
以下是示例代码FooModule:
import { NgModule } from '@angular/core';
import { RouterModule } from '@angular/router'
import { FooComponent …Run Code Online (Sandbox Code Playgroud)