擅长:python、mysql、java
<p>为了保持顺序,不能使用<code>set</code>对象,但可以使用<code>frozenset</code>。冻结集只是Python集对象的不可变版本。
就是这样,</p>
<pre><code>>>> a = [1,2,3,4,5]
>>> b = frozenset(a)
>>> print(a)
[1, 2, 3, 4, 5]
>>> print(b)
frozenset({1, 2, 3, 4, 5})
</code></pre>
<p>对于您的第二个问题,我建议使用此代码。在给定整数之前,它不会从循环中断</p>
<pre><code>>>> while 1:
try:
x = int(input().strip())
break
except ValueError:
pass
</code></pre>
<p>string.strip()用于删除python字符串中的所有前导和尾随空格。不过,在没有string.strip()的情况下,它仍然可以工作。
但在给定整数之前,它不会考虑任何'\n'字符串值和循环</p>
<p>为了用“:”字符分隔输入,您可以简单地使用<code>string.split(":")</code>。它返回一个带分隔值的字符串</p>
<pre><code>>>> a = "1:2:3"
>>> b = a.split(":")
>>> print(b)
['1', '2', '3']
</code></pre>
<p>希望这有帮助</p>