iter()
함수를 사용하여 집합에서 반복자를 가져옵니다.iter()
函数从集合中获取迭代器。
使用next()
函数从迭代器中获取元素。
如果集合为空,请指定默认值。
my_set = {'jiyik.com'} element = next(iter(my_set), None) print(element) # ????️ jiyik.com
我们使用iter()
函数从集合中获取迭代器对象。
next()
函数从提供的迭代器返回下一个项目。
该函数可以传递一个默认值作为第二个参数。
如果迭代器耗尽或为空,则返回默认值。
如果迭代器耗尽或为空且未提供默认值,则会引发
StopIteration
异常。
我们使用 None 作为默认值,但我们可以使用适合我们的用例的任何其他值。
my_set = set() element = next(iter(my_set), None) print(element) # ????️ None
该集合为空,因此返回默认值 None。
或者,我们可以使用元组解包。
使用元组拆包获取单个成员集中的唯一元素,例如(element,) = my_set
。 元组解包语法会将元素的值分配给变量。
my_set = {'jiyik.com'} (element,) = my_set print(element) # ????️ jiyik.com
请注意
,我们在变量名后使用了尾随逗号。
右侧可迭代对象的第一个元素被分配给左侧的变量。
(element,) = ['a'] print(element) # ????️ 'a'
或者,我们可以使用list()
类。
要获取单成员集中的唯一元素:
使用list()
类将集合对象转换为列表。
访问索引 0 处的列表。
my_set = {'jiyik.com'} my_list = list(my_set) element = my_list[0] print(element) # ????️ jiyik.com
集合对象不可订阅(不能通过索引访问),但列表可以。
列表中的第一个元素的索引为 0,因此我们所要做的就是访问索引 0 处的列表元素以获取该集合的唯一成员。
或者,我们可以使用 for 循环。
要获取单成员集中的唯一元素:
使用 for 循环遍历集合。
将元素分配给变量。
my_set = {'jiyik.com'} element = None for element in my_set: break print(element) # ????️ jiyik.com
我们使用
for
循环遍历集合并将其唯一元素分配给变量。我们还使用break
语句退出for
循环。break
语句跳出最内层的 for 或 while 循环。
如果我们的集合保证只包含一个元素,则没有必要这样做。
或者,我们可以使用set.pop()
方法。
使用set.pop()
方法获取单成员集合中的唯一元素,例如element = my_set.pop()
。set.pop()
方法将从集合对象中移除并返回唯一的元素。
my_set = {'jiyik.com'} element = my_set.pop() print(element) # ????️ jiyik.com print(my_set) # ????️ set()
set.pop
方法从集合中删除并返回任意元素。
如果集合为空,该方法将引发
KeyError
异常。
如果我们需要处理KeyError
异常,请使用try/except
语句。
my_set = set() try: element = my_set.pop() print(element) print(my_set) except KeyError: # ????️ this runs print('The set object is empty')
set
对象为空,因此set.pop()
方法引发KeyError
异常,然后由 except 块处理。
仅当我们需要从集合中检索和删除元素时才使用set.pop()
next()
함수를 사용하세요. 컬렉션이 비어 있으면 기본값을 지정하세요. rrreee
iter()
함수를 사용하여 컬렉션에서 반복자 개체를 가져옵니다.
next()
함수는 제공된 반복기에서 다음 항목을 반환합니다. 이 함수는 두 번째 매개변수로 기본값을 전달할 수 있습니다. 반복자가 소진되거나 비어 있으면 기본값을 반환합니다.
반복자가 소진되었거나 비어 있고 기본값이 제공되지 않으면
StopIteration
예외가 발생합니다.
기본값으로 None을 사용하고 있지만 사용 사례에 맞는 다른 값을 사용할 수 있습니다. rrreee컬렉션이 비어 있으므로 기본값 None이 반환됩니다. 또는 튜플 언패킹을 사용할 수도 있습니다. 튜플 압축 해제를 사용하여 단일 멤버 집합에서 고유한 요소를 가져옵니다. 튜플 압축 풀기를 사용하여 단일 멤버 집합에서 고유한 요소를 가져옵니다(예:
(element,) = my_set
). 튜플 압축 풀기 구문은 요소의 값을 변수에 할당합니다. rrreee
참고
변수 이름 뒤에 후행 쉼표를 사용했다는 점에 유의하세요.
오른쪽 iterable의 첫 번째 요소는 왼쪽 변수에 할당됩니다. rrreee 또는
list()
클래스를 사용할 수도 있습니다. list()를 사용하여 단일 구성원 집합에서 고유한 요소를 가져옵니다. 단일 구성원 집합에서 고유한 요소를 가져오려면:
list()
클래스를 사용하여 변환합니다. 컬렉션 개체를 목록으로. 인덱스 0의 목록에 액세스하세요. rrreeeCollection 개체는 구독할 수 없지만(인덱스를 통해 액세스할 수 없음) 목록은 구독할 수 있습니다.
목록의 첫 번째 요소에는 인덱스가 0이므로 우리가 해야 할 일은 집합의 고유한 멤버를 얻기 위해 인덱스 0에 있는 목록 요소에 액세스하는 것뿐입니다.또는 for 루프를 사용할 수도 있습니다. for 루프를 사용하여 단일 구성원 집합에서 고유한 요소를 가져옵니다.단일 구성원 집합에서 고유한 요소를 가져오려면: for 루프를 사용하여 집합을 반복합니다. 변수에 요소를 할당합니다. rrreee
컬렉션에 요소가 하나만 포함되어 있는 경우에는 이 작업을 수행할 필요가 없습니다. 또는for
를 사용하여 컬렉션을 반복하고 컬렉션의 고유 요소를 변수에 할당합니다. 또한for
루프를 종료하기 위해break
문을 사용합니다.break
문은 가장 안쪽의 for 또는 while 루프를 중단합니다.
set.pop()
메서드를 사용할 수도 있습니다. 단일 멤버 컬렉션에서 유일한 요소를 가져오려면 set.pop()을 사용하세요. 단일 멤버 컬렉션에서 유일한 요소를 가져오려면
set.pop()
메서드를 사용하세요.
요소 = my_set.pop()
.
set.pop()
메서드는 집합 개체에서 고유한 요소를 제거하고 반환합니다. rrreee
set.pop
메소드는 세트에서 모든 요소를 제거하고 반환합니다.
컬렉션이 비어 있으면 이 메서드는
KeyError
예외를 발생시킵니다.
KeyError
예외를 처리해야 하는 경우
try/Exception
문을 사용하세요. rrreee
컬렉션에서 요소를 검색하고 제거해야 하는 경우에만set
객체가 비어 있으므로set.pop()
메서드에서KeyError
예외가 발생한 다음 처리됩니다. 제외 블록으로.
set.pop()
메서드를 사용하세요.
위 내용은 Python의 단일 멤버 컬렉션에서 고유 요소를 얻는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!