파이썬 any, all 사용하기
(배열데이터 안에 값이 하나라도 있는지 또는 모두 있는지 비교)
- any() : 하나라도 True인게 있으면 True
- all() : 모두 True여야 True 반환
쉽게 생각해 any는 or, all은 and 연산이라 보면 된다.
>>> any([False, False, False])
False
>>> any([False, True, False])
True
>>> all([False, True, False])
False
>>> all([True, True, True])
True
cur = 3 temp = [1,3,6,2] if any(cur<num for num in temp): print("There exist number that is larger than 3")
if any(input == i for i in mylist1):
if all(input == i for i in mylist2):
저 any와 all 벗겨도 되는거 아니야? 하겠지만 벗기면 에러가 난다.
mylist1 = [1, 2, 3, 4, 5]
input1 = 1
if any(input1 == i for i in mylist1):
print("리스트에 1이 존재함")
# 출력 : 리스트에 1이 존재함
input2 = 6
if any(input2 == i for i in mylist1):
print("리스트에 6이 존재함")
else:
print("리스트에 6이 존재하지 않음")
# 출력 : 리스트에 6이 존재하지 않음
mylist2 = [1, 1, 1, 1, 1]
input = 1
if all(input == i for i in mylist2):
print("모든 리스트의 원소는 1임")
else:
print("1이 아닌 원소가 존재")
# 출력 : 모든 리스트의 원소는 1임
mylist2 = [1, 1, 1, 1, 5]
input = 1
if all(input == i for i in mylist2):
print("모든 리스트의 원소는 1임")
else:
print("1이 아닌 원소가 존재")
# 출력 : 1이 아닌 원소가 존재