Saya agak bingung tentang python in operator untuk set.
Jika saya memiliki satu set sdan beberapa contoh b, apakah benar itu b in sberarti " ada beberapa unsur xdalam ssehingga b == xmerupakantrue "?
Saya agak bingung tentang python in operator untuk set.
Jika saya memiliki satu set sdan beberapa contoh b, apakah benar itu b in sberarti " ada beberapa unsur xdalam ssehingga b == xmerupakantrue "?
Jawaban:
Ya, tapi itu juga berarti hash(b) == hash(x), jadi kesetaraan barang tidak cukup untuk membuatnya sama.
Betul sekali. Anda bisa mencobanya di interpreter seperti ini:
>>> a_set = set(['a', 'b', 'c'])
>>> 'a' in a_set
True
>>>'d' in a_set
False
a = 'a'; b = 'a'; a is b). Saya mencobanya dengan a = (1, 2, 3); b = (1, 2, 3); a == b; hash(a) == hash(b); a is b; a in set([b])gantinya.
Ya itu bisa berarti begitu, atau itu bisa menjadi iterator sederhana. Sebagai contoh: Contoh sebagai iterator:
a=set(['1','2','3'])
for x in a:
print ('This set contains the value ' + x)
Demikian pula sebagai cek:
a=set('ILovePython')
if 'I' in a:
print ('There is an "I" in here')
diedit: diedit untuk memasukkan set daripada daftar dan string
String, meskipun bukan settipe, memiliki inproperti yang berharga selama validasi dalam skrip:
yn = input("Are you sure you want to do this? ")
if yn in "yes":
#accepts 'y' OR 'e' OR 's' OR 'ye' OR 'es' OR 'yes'
return True
return False
Saya harap ini membantu Anda lebih memahami penggunaan indengan contoh ini.
... or 'e' or 'es' or 's'. Pertimbangkan untuk menghapus jawaban yang salah dan tanpa tujuan ini.
Set berperilaku berbeda dari yang lain, Anda perlu menggunakan operasi set seperti issubset ():
>>> k
{'ip': '123.123.123.123', 'pw': 'test1234', 'port': 1234, 'debug': True}
>>> set('ip,port,pw'.split(',')).issubset(set(k.keys()))
True
>>> set('ip,port,pw'.split(',')) in set(k.keys())
False