Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 标记号到名称字符串_Python_Quickfix - Fatal编程技术网

Python 标记号到名称字符串

Python 标记号到名称字符串,python,quickfix,Python,Quickfix,在QuickFix中,如何使用Python从标记号中获取标记的名称?例如,对于OrdStatus,如何将标记号5转换为字符串“OrdStatus\u Cancelled”?.NET: 如果您使用的是QuickFIX/N,那么可以使用DataDictionary实例实现这一点,该实例包含您想要的任何数据源(例如FIX42.xml)。请注意,您可以获取与给定的会话相关联的DataDictionary实例,或者分别使用会话的属性会话数据字典和应用数据字典获取应用程序本身 考虑一下这个简单的C#程序:

在QuickFix中,如何使用Python从标记号中获取标记的名称?例如,对于OrdStatus,如何将标记号5转换为字符串“OrdStatus\u Cancelled”?

.NET:

如果您使用的是QuickFIX/N,那么可以使用
DataDictionary
实例实现这一点,该实例包含您想要的任何数据源(例如FIX42.xml)。请注意,您可以获取与给定的
会话相关联的
DataDictionary
实例,或者分别使用
会话
的属性
会话数据字典
应用数据字典
获取应用程序本身

考虑一下这个简单的C#程序:

C++/Python:

C++ >代码>数据字典< /Cord>类有一个方法:

其中一个示例中的以下片段(添加了注释)演示了如何在给定的
DataDictionary
实例中使用
getValueName

# Create a DataDictionary
def setUp(self):
    self.object = fix.DataDictionary()

# Add a dummy value
self.object.addValueName( 23, "BOO", "VALUE_23_BOO" )

# Test that the dummy value's name in the dictionary matches what was set
self.assertEquals( "VALUE_23_BOO", self.object.getValueName(23, "BOO", "")

您正在使用哪个版本的QuickFIX?快速修复/N?快速修复/J?C++也能提供一个使用Python的例子吗?谢谢更新了一个Python示例。
bool getValueName( int field, const std::string& value, std::string& name ) const
{
  ValueToName::const_iterator i = m_valueNames.find( std::make_pair(field, value) );
  if(i == m_valueNames.end()) return false;
  name = i->second;
  return true;
}
# Create a DataDictionary
def setUp(self):
    self.object = fix.DataDictionary()

# Add a dummy value
self.object.addValueName( 23, "BOO", "VALUE_23_BOO" )

# Test that the dummy value's name in the dictionary matches what was set
self.assertEquals( "VALUE_23_BOO", self.object.getValueName(23, "BOO", "")