파이썬 오류 및 예외 개념(일반)
1. 오류 및 예외 처리 방법
일반적인 오류
a: NameError
참인 경우: SyntaxError
-
f = oepn('1.txt'): IOError
10/0: ZeropisionError
a = int('d'): ValueError
프로그램 실행 중 중단: KeyboardInterrupt
2.Python에서는 try_Exception을 사용하여 예외를 처리합니다. (1)
try: try_suite except Exception [e]: exception_block
try는 try_suite에서 오류를 캡처하는 데 사용됩니다. 예외 처리를 위해 오류 처리
예외 처리가 캡처된 예외 설정과 일치하는 경우, 예외 처리를 위해 예외_블록을 사용하세요
# case 1 try: undef except: print 'catch an except'rrree
case1: 런타임 오류이므로 예외를 catch할 수 있습니다
case2: 구문 오류이고 사전 오류이므로 예외를 catch할 수 없습니다. -run error
--
# case 2 try: if undef except: print 'catch an except'
# case 3 try: undef except NameError,e: print 'catch an except',e
case3: 캡처 설정 NameError 예외로 인해 예외가 catch될 수 있음
case4: IOError를 설정하면 NameError를 처리하지 않으므로 예외를 포착할 수 없습니다
예
# case 4 try: undef except IOError,e: print 'catch an except',e
3. Python은 예외를 처리하기 위해 try_Exception을 사용합니다(2 )
try -Exception: 여러 예외 처리
import random num = random.randint(0, 100) while True: try: guess = int(raw_input("Enter 1~100")) except ValueError, e: print "Enter 1~100" continue if guess > num: print "guess Bigger:", guess elif guess < num: print "guess Smaller:", guess elif guess == num: print "Guess OK,Game Over" break print '\n'
4. Python-try_finally는
try: try_suite except Exception1[e]: exception_block1 except Exception2[e]: exception_block2 except ExceptionN[e]: exception_blockN
- 를 사용합니다. 🎜>try 문이 오류를 포착하지 못하면 코드는 do_finally 문을 실행합니다.
- try 문이 오류를 포착하면 프로그램은 먼저 do_finally 문을 실행한 다음 처리를 위해 Python 인터프리터에 오류를 캡처했습니다.
try:
try_suite
finally:
do_finally
- try 문이 그렇지 않은 경우 예외를 catch하고 try 코드 세그먼트를 실행한 후 finally 실행
- try가 예외를 catch하면 오류를 처리하기 위해 먼저 Except를 실행하고 마지막으로 실행
try:
try_suite
except:
do_except
finally:
do_finally
- with 문은 코드를 더 간결하게 만들기 위해 try_Exception_finall 문을 대체하는 데 사용됩니다.
- 컨텍스트 표현식은 객체를 반환합니다.
- var는 컨텍스트 반환 객체를 저장하는 데 사용되며, 단일 반환 값 또는 튜플은
- with_suite에서 사용됩니다. 컨텍스트 반환 객체에서 작동하는 var 변수
- 컨텍스트 관리 프로토콜: 메서드 포함
및
__enter__()
이 프로토콜을 지원하는 개체는__exit()__
- 컨텍스트 관리자: with 문을 실행할 때 정의합니다. 설정할 런타임 컨텍스트는 항목 실행을 담당합니다. with 문 블록 컨텍스트
- 에서 작업 종료: 컨텍스트 관리자 입력: 관리자
메서드를 호출합니다. as var 문이 설정된 경우 var 변수는
__enter__
메서드를 허용합니다. 반환 값__enter__()
- 컨텍스트 관리자 종료: 관리자 호출
메소드
__exit__
with context [as var]: with_suite
- 파일 작업
- 뮤텍스 잠금과 같은 프로세스 스레드 간의 상호 개체
- 컨텍스트를 지원하는 기타 개체
- rais 문
- reise 문은 예외를 적극적으로 발생시키는 데 사용됩니다.
- 구문 형식: raise[Exception[,args]]
- 예외: 예외 클래스
- args: 예외 정보를 설명하는 튜플
class Mycontex(object): def __init__(self, name): self.name = name def __enter__(self): print "__enter__" return self def do_self(self): print "do_self" def __exit__(self, exc_type, exc_val, exc_tb): print "__exit__" print "Error:", exc_type, " info:", exc_val if __name__ == "__main__": with Mycontex('test context') as f: print f.name f.do_self()
raise TypeError, 'Test Error'
- assert 문
- Assertion 문: Assertion 문은 표현식이 true인지 확인하는 데 사용됩니다. 해당 표현식이 false인 경우 AssertionError가 발생합니다.
- 문법 형식: Assert 표현식[,args]
- experession: 표현식
- args: 판단 조건 설명 정보
raise IOError, 'File Not Exit'
assert 0, 'test assert'2. Python 표준 예외 및 사용자 정의 예외
- 표준 예외
- Python 내장 프로그램이 실행되기 전에 이미 예외가 존재합니다
- 사용자 정의 예외:
- Python에서는 Python에서 다루지 않는 비정상적인 상황을 설명하기 위해 사용자 정의 예외를 허용합니다.
- 사용자 정의 예외는 상속되어야 합니다. 예외 클래스
- 사용자 정의 예외는 적극적으로만 트리거될 수 있습니다
assert 4==5, 'test assert'

Tomergelistsinpython, youcanusethe operator, extendmethod, listcomprehension, oritertools.chain, 각각은 각각의 지위를 불러 일으킨다

Python 3에서는 다양한 방법을 통해 두 개의 목록을 연결할 수 있습니다. 1) 작은 목록에 적합하지만 큰 목록에는 비효율적입니다. 2) 메모리 효율이 높지만 원래 목록을 수정하는 큰 목록에 적합한 확장 방법을 사용합니다. 3) 원래 목록을 수정하지 않고 여러 목록을 병합하는 데 적합한 * 운영자 사용; 4) 메모리 효율이 높은 대형 데이터 세트에 적합한 itertools.chain을 사용하십시오.

join () 메소드를 사용하는 것은 Python의 목록에서 문자열을 연결하는 가장 효율적인 방법입니다. 1) join () 메소드를 사용하여 효율적이고 읽기 쉽습니다. 2)주기는 큰 목록에 비효율적으로 운영자를 사용합니다. 3) List Comprehension과 Join ()의 조합은 변환이 필요한 시나리오에 적합합니다. 4) READE () 방법은 다른 유형의 감소에 적합하지만 문자열 연결에 비효율적입니다. 완전한 문장은 끝납니다.

pythonexecutionissprocessoftransformingpythoncodeintoExecutableInstructions.1) the -interreadsTheCode, ConvertingItintoByTecode, thethepythonVirtualMachine (pvm)을 실행합니다

Python의 주요 특징은 다음과 같습니다. 1. 구문은 간결하고 이해하기 쉽고 초보자에게 적합합니다. 2. 개발 속도 향상, 동적 유형 시스템; 3. 여러 작업을 지원하는 풍부한 표준 라이브러리; 4. 광범위한 지원을 제공하는 강력한 지역 사회와 생태계; 5. 스크립팅 및 빠른 프로토 타이핑에 적합한 해석; 6. 다양한 프로그래밍 스타일에 적합한 다중-파라 디그 지원.

Python은 해석 된 언어이지만 편집 프로세스도 포함됩니다. 1) 파이썬 코드는 먼저 바이트 코드로 컴파일됩니다. 2) 바이트 코드는 Python Virtual Machine에 의해 해석되고 실행됩니다. 3)이 하이브리드 메커니즘은 파이썬이 유연하고 효율적이지만 완전히 편집 된 언어만큼 빠르지는 않습니다.

USEAFORLOOPHENTERATINGOVERASERASERASPECIFICNUMBEROFTIMES; USEAWHILLOOPWHENTINUTIMONDITINISMET.FORLOOPSAREIDEALFORKNOWNSEDINGENCENCENS, WHILEWHILELOOPSSUITSITUATIONS WITHERMINGEDERITERATIONS.

Pythonloopscanleadtoerrors likeinfiniteloops, modifyinglistsdizeration, off-by-by-byerrors, zero-indexingissues, andnestedloopineficiencies.toavoidthese : 1) aing'i


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

SecList
SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

SublimeText3 영어 버전
권장 사항: Win 버전, 코드 프롬프트 지원!

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전

VSCode Windows 64비트 다운로드
Microsoft에서 출시한 강력한 무료 IDE 편집기

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)