Best answer
다음은 문자열이 있는지 확인하는 함수입니다. 비어 있음 :
def is\_empty(string):
return not string.strip()
빈 시퀀스는 거짓이며 부울 컨텍스트에서 False로 평가됩니다. 이것을 사용하여 문자열이 비어 있는지 여부를 확인할 수 있습니다. 먼저 공백을 제거하여 문자열에 공백 만 포함 된 경우 해당 공백이 제거되고 문자열이 null이되어 False로 평가됩니다. 공백 만있는 문자열을 비어있는 것으로 간주하지 않으려면 strip () 메소드를 제거 할 수 있습니다.
사용 예 :
print(is\_empty("")) # Empty string.
print(is\_empty(" ")) # String with only a space char.
print(is\_empty("Hello!")) # String with actual characters.
출력 :
True
True
False
참고 : 명확하고 bool ()을 문자열 이외의 내용도 함수에 전달해야하는 경우 함수입니다.
Answer
당신이 목록에 대해 이야기하고 있다고 가정하겠습니다 (Python에는 배열이 있습니다. ,하지만 목록과는 매우 다릅니다).
세 가지 방법 :
1 진실성 테스트
항목이 목록이라는 것을 알고있는 경우 :
if not my\_list:
print(‘List is empty’)
빈 컨테이너 (목록, 집합, 튜플, 딕셔너리)는 False로 평가됩니다.
2 em에 대해 테스트 pty 목록
if my\_list == []:
print(‘List is empty’)
3 길이 테스트
if len(my\_list) == 0:
print(‘List is empty’)
세 가지 옵션 중 첫 번째 옵션이 가장 깨끗한 것으로 간주됩니다.
추가 :
목록을 사용하기 전에 테스트하는 경우 가장 좋은 방법은 귀찮게하지 않고 목록을 사용하여 오류를 포착하는 것입니다.
try:
customer = customer\_list[customer\_number]
except IndexError:
print(‘List is empty or {customer\_number} doesn’t exist’)
이렇게 오류를 포착하는 것이 명시 적으로 비어 있는지 테스트하는 것보다 낫다고 간주됩니다. EAFP라는 Python 원칙 중 하나입니다. 권한보다 용서를 구하기가 더 쉽습니다.
numpy 배열에 대한 참고 사항
Numpy는 위의 메커니즘을 반드시 따르지 않습니다. 예를 들어 방법 1은 오류를 생성하고 위의 방법 3은 예를 들어 the\_array.size == 0
이어야합니다.