Python을 개발할 때 주의해야 할 10가지 사항
다음은 Python의 10가지 유용한 팁과 요령입니다. 이들 중 일부는 초보자가 언어를 배울 때 저지르는 일반적인 실수입니다.
참고: 우리 모두가 Python 3
을 사용하고 있다고 가정합니다.
1. 목록 이해
목록이 있습니다: bag = [1, 2, 3, 4, 5]
이제 다음과 같이 모든 요소를 두 배로 늘리고 싶습니다. [2, 4, 6, 8, 10]
대부분의 초보자는 아마도 이전 언어 경험을 바탕으로 이 작업을 수행할 것입니다
bag = [1, 2, 3, 4, 5] for i in range(len(bag)): bag[i] = bag[i] * 2
하지만 더 좋은 방법이 있습니다:
bag = [elem * 2 for elem in bag]
아주 간단하죠? 이것을 Python 목록 이해라고 합니다.
목록 이해에 대한 자세한 소개를 보려면 Trey Hunner의 튜토리얼을 클릭하세요.
2. 목록 순회
위의 목록을 계속 진행하세요.
가능하면 이 작업을 피하세요.
bag = [1, 2, 3, 4, 5] for i in range(len(bag)): print(bag[i])
대신 다음과 같아야 합니다:
bag = [1, 2, 3, 4, 5] for i in bag: print(i)
x가 목록인 경우 해당 요소를 반복할 수 있습니다. 대부분의 경우 각 요소의 인덱스는 필요하지 않지만, 필요한 경우 열거 함수를 사용하세요. 다음과 같습니다:
bag = [1, 2, 3, 4, 5] for index, element in enumerate(bag): print(index, element)
매우 직관적이고 명확합니다.
3. 요소교환
Java 또는 C에서 Python으로 전환하는 경우 다음 방법에 익숙할 수 있습니다.
a = 5 b = 10 # 交换 a 和 b tmp = a a = b b = tmp
하지만 Python은 더 자연스럽고 더 나은 방법을 제공합니다!
아아아아꽤 괜찮죠?
4. 초기화 목록
10개의 정수 0 목록을 원한다면 먼저 다음을 생각해 보세요:
a = 5 b = 10 # 交换a 和 b a, b = b, a
다른 방법을 시도해 보겠습니다.
bag = [] for _ in range(10): bag.append(0)
보세요, 얼마나 우아한지.
참고: 목록에 목록이 포함된 경우 이렇게 하면 얕은 복사본이 생성됩니다.
예:
bag = [0] * 10
이런! 모든 목록이 변경되었으며 첫 번째 목록만 변경하려고 합니다.
바꿔보세요:
아아아아또한 기억하세요:
“성급한 최적화가 만악의 근원”
스스로에게 물어보세요. 목록을 초기화하는 것이 필요한가요?
5. 문자열 구성
문자열을 인쇄해야 하는 경우가 종종 있습니다. 변수가 많은 경우 다음을 피하세요.
bag_of_bags = [[0]] * 5 # [[0], [0], [0], [0], [0]] bag_of_bags[0][0] = 1 # [[1], [1], [1], [1], [1]]
음, 이게 얼마나 지저분해 보이나요? 대신 .format이라는 훌륭하고 간결한 방법을 사용할 수 있습니다.
이렇게 하세요:
아아아아훨씬 나아요!
6. 튜플 반환
Python을 사용하면 함수에서 여러 요소를 반환할 수 있으므로 작업이 더 쉬워집니다. 하지만 튜플을 풀 때 다음과 같은 일반적인 오류가 발생합니다:
bag_of_bags = [[0] for _ in range(5)] # [[0], [0], [0], [0], [0]] bag_of_bags[0][0] = 1 # [[1], [0], [0], [0], [0]]
꼭 필요한 것은 아닙니다.
name = "Raymond" age = 22 born_in = "Oakland, CA" string = "Hello my name is " + name + "and I'm " + str(age) + " years old. I was born in " + born_in + "." print(string)
로 변경할 수 있습니다. 모든 요소를 반환해야 하는 경우 밑줄을 사용하세요_:
name = "Raymond" age = 22 born_in = "Oakland, CA" string = "Hello my name is {0} and I'm {1} years old. I was born in {2}.".format(name, age, born_in) print(string)
정말 효율적이에요!
7. 사전 액세스
또한 dicts에 키와 쌍(키, 값)을 자주 작성하게 됩니다.
dict에 존재하지 않는 키에 액세스하려는 경우 다음을 수행하여 KeyError 오류를 방지할 수 있습니다.
def binary(): return 0, 1 result = binary() zero = result[0] one = result[1]
그러나 get()을 사용하는 것이 더 좋은 방법입니다.
아아아아물론 대신 setdefault를 사용할 수도 있습니다.
이것은 더 간단하지만 비용이 더 많이 드는 방법입니다.
def binary(): return 0, 1 zero, one = binary()
dict 파생을 사용할 수도 있습니다.
아아아아이 두 메서드는 count가 호출될 때마다 목록을 순회하므로 비용이 많이 듭니다.
8. 라이브러리 이용
기존 라이브러리를 가져오기만 하면 원하는 것을 할 수 있습니다.
이전 예제에 대해 이야기하면서 목록에 숫자가 나타나는 횟수를 계산하는 함수를 만들어 보겠습니다. 글쎄요, 그런 일을 할 수 있는 도서관이 이미 있습니다.
아아아아도서관을 이용하는 이유:
코드가 정확하고 테스트되었습니다.
그들의 알고리즘은 최적일 수 있으며 더 빠르게 실행될 수 있습니다.
추상화: 명확하고 잘 문서화되어 있으며 아직 구현되지 않은 내용에 집중할 수 있습니다.
마지막으로, 모든 것이 거기에 있으므로 바퀴를 다시 만들 필요가 없습니다.
9. 목록에서 슬라이싱/스테핑
이 목록[start:stop:step]과 같이 시작점과 중지점을 지정할 수 있습니다. 목록에서 처음 5개 요소를 제거합니다:
zero, _ = binary()
이것은 슬라이싱입니다. 중지 지점을 5로 지정하면 중지하기 전에 목록에서 5개의 요소가 제거됩니다.
마지막 5개 요소로 무엇을 해야 할까요?
아아아아이해가 안 되나요? -5는 목록 끝에서 5개의 요소를 가져오는 것을 의미합니다.
목록에 있는 요소 사이의 간격에 대해 작업하려면 다음과 같이 하면 됩니다.
countr = {} bag = [2, 3, 1, 2, 5, 6, 7, 9, 2, 7] for i in bag: if i in countr: countr[i] += 1 else: countr[i] = 1 for i in range(10): if i in countr: print("Count of {}: {}".format(i, countr[i])) else: print("Count of {}: {}".format(i, 0))
하지만 이렇게 해야 합니다:
아아아아이것이 목록의 단계입니다. list[::2]는 목록을 탐색하고 두 단계로 요소를 꺼내는 것을 의미합니다.
list[::-1]을 사용하여 멋진 뒤집기 목록을 만들 수 있습니다.
10. 탭 키 또는 스페이스바
장기적으로 탭과 공백을 혼합하면 재앙이 발생할 수 있으며 IndentationError: 예기치 않은 들여쓰기가 표시됩니다. 탭 키를 선택하든 스페이스 바를 선택하든 파일과 프로젝트 전체에서 계속 사용해야 합니다.
탭 대신 공백을 사용하는 한 가지 이유는 탭이 모든 편집기에서 동일하게 생성되지 않기 때문입니다. 사용된 편집기에 따라 탭은 2~8개의 공백으로 처리될 수 있습니다.
코드를 작성할 때 공백을 사용하여 탭을 정의할 수도 있습니다. 이렇게 하면 탭으로 사용할 공간 수를 선택할 수 있습니다. 대부분의 Python 사용자는 4개의 공백을 사용합니다.
영문 원문: The Python Way: 10 Tips
위 내용은 Python을 개발할 때 주의해야 할 10가지 사항의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

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

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

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

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

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

뜨거운 주제











Mingchao 테스트 중에는 정보 손실 및 비정상적인 게임 로그인을 방지하기 위해 시스템 업그레이드, 공장 초기화, 부품 교체를 피하시기 바랍니다. 특별 알림: 테스트 기간에는 이의 제기 채널이 없으므로 주의해서 처리하시기 바랍니다. Mingchao 테스트 중 주의 사항 소개: 시스템 업그레이드, 공장 설정 복원, 장비 구성 요소 교체 등을 수행하지 마십시오. 참고: 1. 정보 손실을 방지하려면 테스트 기간 동안 시스템을 주의 깊게 업그레이드하십시오. 2. 시스템이 업데이트될 경우 게임에 로그인할 수 없는 문제가 발생할 수 있습니다. 3. 이 단계에서는 아직 어필 채널이 열리지 않았습니다. 플레이어는 자신의 재량으로 업그레이드 여부를 선택하는 것이 좋습니다. 4. 동시에 하나의 게임 계정은 하나의 Android 기기와 하나의 PC에서만 사용할 수 있습니다. 5. 휴대폰 시스템을 업그레이드하거나 공장 설정으로 복원하거나 장치를 교체하기 전에는 테스트가 완료될 때까지 기다리는 것이 좋습니다.

C++ 개발에서 널 포인터 예외는 일반적인 오류로, 포인터가 초기화되지 않거나 해제된 후에도 계속 사용될 때 자주 발생합니다. 널 포인터 예외는 프로그램 충돌을 일으킬 뿐만 아니라 보안 취약점을 유발할 수도 있으므로 특별한 주의가 필요합니다. 이 기사에서는 C++ 코드에서 널 포인터 예외를 방지하는 방법을 설명합니다. 포인터 변수 초기화 C++의 포인터는 사용하기 전에 초기화해야 합니다. 초기화되지 않은 경우 포인터는 임의의 메모리 주소를 가리키며 이로 인해 Null 포인터 예외가 발생할 수 있습니다. 포인터를 초기화하려면 포인터가

단편 동영상 플랫폼의 등장으로 Douyin은 많은 사람들의 일상생활에서 없어서는 안 될 부분이 되었습니다. Douyin을 통한 라이브 방송과 팬들과의 소통은 많은 사용자들의 꿈입니다. 그렇다면 처음으로 Douyin에서 라이브 방송을 시작하는 방법은 무엇입니까? 1. Douyin에서 처음으로 라이브 방송을 시작하는 방법은 무엇입니까? 1. 준비 생방송을 시작하려면 먼저 Douyin 계정이 실명 인증을 완료했는지 확인해야 합니다. Douyin 앱의 "나" -> "설정" -> "계정 및 보안"에서 실명인증 튜토리얼을 확인하실 수 있습니다. 실명인증을 완료하신 후, 라이브 방송 조건을 충족하시면 Douyin 플랫폼에서 라이브 방송을 시작하실 수 있습니다. 2. 생방송 허가 신청 생방송 조건을 충족한 후 생방송 허가를 신청해야 합니다. Douyin 앱을 열고 "나"->"크리에이터 센터"->"직접"을 클릭하세요.

localStorage를 사용하여 데이터를 저장하는 단계 및 주의 사항 이 문서에서는 주로 localStorage를 사용하여 데이터를 저장하는 방법을 소개하고 관련 코드 예제를 제공합니다. LocalStorage는 서버를 통하지 않고 사용자 컴퓨터에 로컬로 데이터를 유지하는 브라우저에 데이터를 저장하는 방법입니다. 다음은 localStorage를 사용하여 데이터를 저장할 때 주의해야 할 단계와 사항입니다. 1단계: 브라우저가 LocalStorage를 지원하는지 확인

Python 개발 경험 공유: 버전 제어 및 릴리스 관리 수행 방법 소개: Python 개발 프로세스에서 버전 제어 및 릴리스 관리는 매우 중요한 연결 고리입니다. 버전 제어를 통해 코드 변경 사항을 쉽게 추적하고, 개발에 협력하고, 충돌을 해결할 수 있으며, 릴리스 관리는 코드의 품질과 안정성을 보장하기 위해 코드의 배포, 테스트 및 릴리스 프로세스를 구성하는 데 도움이 될 수 있습니다. 이 기사에서는 버전 제어와 릴리스 관리라는 두 가지 측면에서 Python 개발의 몇 가지 경험과 사례를 공유합니다. 1. 버전 관리 버전 관리

오프라인 환경에서 pip 설치 방법 및 주의사항 네트워크가 원활하지 않은 오프라인 환경에서는 pip 설치가 어렵습니다. 이 글에서는 오프라인 환경에서 pip를 설치하는 여러 가지 방법을 소개하고 구체적인 코드 예제를 제공합니다. 방법 1: 오프라인 설치 패키지를 사용합니다. 인터넷에 연결할 수 있는 환경에서 다음 명령을 사용하여 공식 소스에서 pip 설치 패키지를 다운로드합니다. 이 명령은 공식 소스에서 pip 및 해당 종속 패키지를 자동으로 다운로드합니다. 소스를 다운로드하여 현재 디렉터리에 저장합니다. 다운로드한 압축 패키지를 원격 위치로 이동

고급 프로그래밍 언어인 Python은 배우기 쉽고, 사용하기 쉽고, 개발 효율성이 높다는 장점을 갖고 있으며, 개발자들 사이에서 점점 인기를 얻고 있습니다. 그러나 가비지 수집 메커니즘이 구현되는 방식으로 인해 Python은 많은 양의 메모리를 처리할 때 메모리 누수가 발생하기 쉽습니다. 이 글에서는 일반적인 메모리 누수 문제, 문제의 원인, 메모리 누수를 방지하는 방법이라는 세 가지 측면에서 Python 개발 중에 주의해야 할 사항을 소개합니다. 1. 일반적인 메모리 누수 문제: 메모리 누수는 작업 중에 프로그램이 할당한 메모리 공간을 해제할 수 없는 것을 의미합니다.

Python은 다양한 분야의 소프트웨어 개발에 널리 사용되는 강력하고 유연한 프로그래밍 언어입니다. Python 개발 과정에서는 객체지향 프로그래밍(OOP)의 원리를 익히고 적용하는 것이 매우 중요합니다. 이 기사에서는 개발자가 객체 지향 프로그래밍의 원칙을 더 잘 이해하고 적용하는 데 도움이 되는 몇 가지 주요 Python 개발 제안을 소개합니다. 우선, 객체지향 프로그래밍의 핵심 아이디어는 문제를 일련의 객체로 나누고,
