Kri*_*chu 2 python tuples set distinct ipython
我正在寻找一种方法来测试一个元组是否具有所有不同的元素 - 所以说,它是一个集合,最终得到了这个快速而肮脏的解决方案.
def distinct ( tup):
n=0
for t in tup:
for k in tup:
#print t,k,n
if (t == k ):
n = n+1
if ( n != len(tup)):
return False
else :
return True
print distinct((1,3,2,10))
print distinct((3,3,4,2,7))
Run Code Online (Sandbox Code Playgroud)
有什么想法错误?是否内置了元组?
你可以很容易地做到:
len(set(tup))==len(tup)
Run Code Online (Sandbox Code Playgroud)
这产生了set的tup并检查它是否是相同的长度与原始tup.它们具有相同长度的唯一情况是,如果所有元素tup都是唯一的
>>> a = (1,2,3)
>>> print len(set(a))==len(a)
True
>>> b = (1,2,2)
>>> print len(set(b))==len(b)
False
>>> c = (1,2,3,4,5,6,7,8,5)
>>> print len(set(c))==len(c)
False
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
276 次 |
| 最近记录: |