当前位置: 首页>>代码示例>>C#>>正文


C# PyObject.GetString方法代码示例

本文整理汇总了C#中PyObject.GetString方法的典型用法代码示例。如果您正苦于以下问题:C# PyObject.GetString方法的具体用法?C# PyObject.GetString怎么用?C# PyObject.GetString使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在PyObject的用法示例。


在下文中一共展示了PyObject.GetString方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: PyException

        public PyException(IntPtr type, IntPtr value, IntPtr traceback)
        {
            TypeObject = new PyObject(type);
            ValueObject = new PyObject(value);
            TracebackObject = new PyObject(traceback);
            TypeObject.IncRef();
            ValueObject.IncRef();
            TracebackObject.IncRef();

            Type = TypeObject.GetString("__name__");
            if (ValueObject.IsString)
                Value = PyString.GetValueInternal(ValueObject.Pointer);
            else if (ValueObject.HasAttr("message"))
                Value = ValueObject.GetString("message");
            else // use Py_Repr to atleast get some information
                Value = ValueObject.ToString();

            CallStack = new List<PyTraceback>(5);
            var cur = TracebackObject;
            while (cur != null && cur.IsValid && !cur.IsNone)
            {
                CallStack.Add(new PyTraceback(cur));
                cur = cur.Get("tb_next");
            }
        }
开发者ID:Reve,项目名称:beliEVE,代码行数:25,代码来源:PyException.cs

示例2: PrintBall

 private static string PrintBall(PyObject ball)
 {
     string name = "?";
         if (ball.HasAttr("name"))
             name = ball.GetString("name");
         double x = ball.GetFloat("x");
         double y = ball.GetFloat("y");
         double z = ball.GetFloat("z");
         double mass = ball.GetFloat("mass");
         double radius = ball.GetFloat("radius");
     var builder = new StringBuilder();
     builder.AppendLine("ball id " + ball.Get("id"));
     builder.AppendLine("\tname: " + name + "\t mass: " + mass + "\t radius: " + radius);
     builder.AppendLine("\txyz: [" + Math.Round(x) + ", " + Math.Round(y) + ", " + Math.Round(z) + "]");
     return builder.ToString();
 }
开发者ID:Reve,项目名称:beliEVE,代码行数:16,代码来源:DestinyToolPlugin.cs

示例3: PyCode

        public PyCode(PyObject code)
        {
            _code = code;
            code.IncRef();

            RawBytecode = code.GetRaw("co_code");
            Name = code.GetString("co_name");
            File = code.GetString("co_filename");
            Bytecode = new PyBytecode(this);
        }
开发者ID:Reve,项目名称:beliEVE,代码行数:10,代码来源:PyException.cs


注:本文中的PyObject.GetString方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。