擅长:python、mysql、java
<p>让我们试试对象的真<a href="http://pyyaml.org/wiki/PyYAMLDocumentation#YAMLtagsandPythontypes" rel="noreferrer">pyyaml</a>语法</p>
<p>在myyaml.py公司公司名称:</p>
<pre><code>import yaml,sys
class StateMachine(object):
pass
class State(object):
pass
class Connection(object):
pass
if __name__ == '__main__':
o = yaml.load("""
!!python/object:myyaml.StateMachine {
states: [
!!python/object:myyaml.State { name: p1 },
!!python/object:myyaml.State { name: p2 },
!!python/object:myyaml.State { name: p3 },],
connections:
[ !!python/object:myyaml.Connection { 'pim' : [p1,p2]}]}
""")
print o.states[0].name
print o.states[1].name
print o.connections[0].pim
sys.exit(0)
</code></pre>
<p>获得:</p>
^{pr2}$
<p>永远不要尝试山药负荷()在模块的根块中,始终使用<code>if __name__ == '__main__'</code>或在确保调用一次的函数中调用它。在</p>
<p>请注意,yaml声明:</p>
<pre><code>!!python/object:myyaml.State { name: p1 },
</code></pre>
<p>此时,yaml尝试导入myyaml.py公司同样,在另一个上下文中,如果您将山药负荷或者在模块的根目录中,您可能会遇到一个无限循环,或者一个意外的结果。在</p>