小编lts*_*tar的帖子

我可以在Python中使用对象(类的实例)作为字典键吗?

我想使用类实例作为字典键,如:

classinstance = class()
dictionary[classinstance] = 'hello world'
Run Code Online (Sandbox Code Playgroud)

Python似乎无法将类作为字典键处理,或者我错了?另外,我可以使用像[(classinstance,helloworld),...]这样的元组列表而不是字典,但这看起来非常不专业.你有解决这个问题的线索吗?

python dictionary tuples list

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

Symfony3控制器构造函数注入不起作用

我想使用以下代码将EntityManager实例传递给我的控制器的构造函数:

namespace AppBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Doctrine\ORM\EntityManager;

class UserController extends Controller
{

    public function __construct( EntityManager $entityManager )
    {
        // do some stuff with the entityManager
    }
}
Run Code Online (Sandbox Code Playgroud)

我通过将参数放入service.yml文件来进行构造函数注入:

parameters:
#    parameter_name: value

services:
#    service_name:
#        class: AppBundle\Directory\ClassName
#        arguments: ["@another_service_name", "plain_value", "%parameter_name%"]
    app.user_controller:
        class: AppBundle\Controller\UserController
        arguments: ['@doctrine.orm.entity_manager']
Run Code Online (Sandbox Code Playgroud)

service.yml包含在config.yml中,当我运行时

php bin/console debug:container app.user_controller

我明白了:

 Information for Service "app.user_controller"
 =============================================

 ------------------ ------------------------------------- 
  Option             Value                                
 ------------------ ------------------------------------- 
  Service ID         app.user_controller                  
  Class              AppBundle\Controller\UserController  
  Tags               -                                    
  Public             yes                                  
  Synthetic          no                                   
  Lazy               no                                   
  Shared …
Run Code Online (Sandbox Code Playgroud)

php symfony

6
推荐指数
1
解决办法
6059
查看次数

如何在没有显式转换的情况下使用 C++ 枚举类枚举器作为 std::array 索引

std:array当我想引用特定索引时,我想使用 C++ 枚举类作为索引而不调用显式转换。

我还使用 atypedef作为固定大小的std::array.

typedef std::array<int, 3> MyType;
enum class MyEnum {
  ENUMERATOR0 = 0,
  ENUMERATOR1 = 1,
  ENUMERATOR2 = 2,
};
Run Code Online (Sandbox Code Playgroud)

所以不要使用:

MyType my_type = {0};
my_type[static_cast<int>(MyEnum::ENUMERATOR0)] = 42;
Run Code Online (Sandbox Code Playgroud)

我想使用:

my_type[MyEnum::ENUMERATOR0] = 42;
Run Code Online (Sandbox Code Playgroud)

因此,我假设需要重载我的MyType( std::array) 类型的下标运算符。但是,我不知道如何在我的情况下重载下标运算符。为简单起见,我想避免使用类而不是 typedef。我怎样才能做到这一点?

c++ arrays indexing enums c++11

6
推荐指数
2
解决办法
3196
查看次数

GitHttpClient 获取引用/标签的提交

我想使用 WebApi 和 来GitHttpClient查找一些 Git 标签并识别一些标签对之间的提交。

我设法使用 获取标签gitClient.GetRefsAsync(gitRepository.Id),但我不知道如何获取标签指向的提交。

换句话说,我不知道如何从GitRef对象获取提交 ID。

https://learn.microsoft.com/en-us/dotnet/api/microsoft.teamfoundation.sourcecontrol.webapi.gitref

azure-devops

5
推荐指数
1
解决办法
803
查看次数

无法使用pythons mysqldb执行mysql插入

这是我关于stackoverflow的第一个问题!我正在编程一个steamcommunity爬虫,它爬过蒸汽配置文件并保存像拥有的游戏,steamname,朋友等...但当我尝试运行插入命令时,它只是没有.

 if not self.check_user('games', id):
  print "insert"
  self.cursor.execute("INSERT INTO games (userid) VALUES(%s);" % id)
Run Code Online (Sandbox Code Playgroud)

程序显示"insert"但执行命令既不抛出异常,也不向数据库插入内容.此外,没有发现最终发生的异常.当我将查询更改为"INSERT INTO games(useridd)"时,程序退出并看到异常.

该应用程序是多线程的,但在执行之前获得,因此我看不出任何问题.

python mysql mysql-python

3
推荐指数
2
解决办法
814
查看次数

Delphi 7编辑组件创建

根据Delphi 7中编辑组件的运行时创建,我遇到了问题.因此,当程序运行"一段时间"后创建TEdit组件时,它完全有效.但是,当我在Forms OnCreate事件中创建TEdit元素时,它们的高度错误.此外,(几乎)同时创建的形状具有正确的高度.

红色标记的编辑在Forms OnCreate过程中创建,而其他编辑在另一个事件上创建.

编辑:

procedure TTPLVisorForm.CreateZeichen(ZShape : TShape; ZEdit : TEdit; VLeft : integer);
begin
  with ZShape do
  begin
    Width := 50;
    Height := 50;
    Left := VLeft;
    Top := 25;
    Shape := stRectangle;
    Parent := self.Band;
    SendToBack();
  end;

  with ZEdit do
  begin
    Text := '#';
    Left := VLeft+1;
    Top := 26;
    Parent := self.Band;
    Font.Height := 48;
    Width := 48;
    Height := 48;
    SendToBack;
  end;
end;
Run Code Online (Sandbox Code Playgroud)

被召唤:

procedure TZeichen.Anzeigen(Form : TObject; Left : integer);
begin
  self.Form := Form;

  self.ZShape …
Run Code Online (Sandbox Code Playgroud)

delphi user-interface

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

使用UNIX行结尾保存XDocument

我有一个代码部分看起来像这样:

XDocument xml = new XDocument(
    new XElement("test1",
        new XElement("test2", "abc")
    )
);
Run Code Online (Sandbox Code Playgroud)

我现在想使用Save方法保存xml文档:

xml.Save("test.xml");
Run Code Online (Sandbox Code Playgroud)

然后我使用十六进制编辑器查看了该文件,发现它有windows行结尾(/ r/n).但是,我"只" 需要 UNIX行结尾(/ n).

Hexeditor显示行结尾

提前致谢!

c# xml line-endings

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

在Delphi中传递self作为参数

我想将"self"作为参数传递给另一个类的方法(在不同的单元中).但是第一个类的类型在第二个类中是未知的,因为我不能将第一个单元放入第二个单元的使用部分.所以我将参数类型定义为指针,但是当我尝试从第一个类调用一个方法时,Delphi 7解析器告诉我classtyp是必需的.

那我该怎么解决这个问题呢?

delphi pascal

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