Python 기본 소개--함수
8. 함수
-
함수는 특정 작업을 완료하는 데 사용되는 명명된 코드 블록입니다. def 함수 정의, 함수 이름을 나타냅니다. 함수를 정의할 때 매개변수의 이름과 위치를 결정하면 함수의 인터페이스 정의가 완성됩니다. 함수를 호출하는 사람은 올바른 매개변수를 전달하는 방법과 함수가 반환할 값만 알면 충분합니다. 함수 내부의 복잡한 논리는 캡슐화되어 있으므로 호출자는 이해할 필요가 없습니다.
함수로 정의된 특정 작업을 수행하려면 함수를 호출하세요. 프로그램에서 동일한 작업을 여러 번 수행하는 경우 작업을 반복적으로 완료하기 위해 코드를 작성할 필요가 없으며 작업을 수행하는 함수를 호출하고 Python이 코드를 실행하도록 하면 됩니다. - 고차 함수는 영어로 Higher-order function이라고 합니다
- 8.1 실제 매개변수와 형식 매개변수
1. 함수를 호출할 때 Python은 함수 호출의 각 실제 매개변수를 함수 정의의 형식 매개변수에 연결해야 합니다. 단순 연관은 실제 매개변수의 순서를 기반으로 합니다. 이 연관성을 위치 인수라고 합니다.
2. 함수에서는 필요에 따라 위치 인수를 얼마든지 사용할 수 있으며, Python은 함수 호출의 실제 매개변수를 함수 정의의 해당 형식 매개변수에 순차적으로 연결합니다. 3. 위치 인수를 사용하여 함수를 호출할 때 인수 순서가 올바르지 않으면 출력이 올바르지 않습니다. 8.2.2 키워드 인수 및 키워드 인수 키워드 인수는 함수에 전달되는 (이름-값) 쌍입니다. 인수에서 이름과 값을 직접 연관시키므로 인수를 함수에 전달할 때 혼동이 없습니다. 키워드 인수를 사용하면 함수 호출에서 인수 순서에 대해 걱정할 필요가 없으며 함수 호출에서 각 값의 목적을 명확하게 나타냅니다. describe_pet(
|
>> > person('Bob', 35, city='Beijing')
>>> , 성별='M', job='엔지니어')이름: 아담 나이: 45 기타: {'성별': 'M', 'job': '엔지니어'} 8.2.3 기본값 value |
기본 매개변수는 불변 객체를 가리켜야 합니다!
def add_end(L=None):
L = [] L.append('END') return L
8.2. 4 변수 매개변수 |
숫자 n의 경우: sum = sum + n * n return sum
|
> 또는 튜플의 요소가 가변 매개변수가 되어 전달됩니다:
>>> , 3] >>> 계산(*숫자) | 14
*nums는 nums 목록의 모든 요소를 변수 매개변수로 전달하는 것을 의미합니다.
8.2.5 명명된 키워드 매개변수
키워드 매개변수의 경우 함수 호출자는 무제한의 키워드 매개변수를 전달할 수 있습니다. 전달된 내용은 함수 내부에서 kw 검사를 통과해야 합니다.
키워드 매개변수의 이름을 제한하려면 명명된 키워드 매개변수를 사용할 수 있습니다. 예를 들어 도시와 직업만 키워드 매개변수로 받습니다. 이렇게 정의된 함수는 다음과 같습니다.
def person(이름, 나이, *, 도시, 직업): print(이름, 나이, 도시, 직업) |
및 키워드 매개변수 **kw와 달리 명명된 키워드 매개변수에는 특수 구분 기호 *가 필요하며 * 뒤에 오는 매개변수는 명명된 키워드 매개변수로 간주됩니다.
함수 정의에 변수 매개변수가 이미 있는 경우 뒤에 오는 명명된 키워드 매개변수에는 특별한 구분 기호가 필요하지 않습니다. *:
def person(name, age, *args, city, job): print(name, age, args, city, job) |
명명된 키워드 매개변수는 매개변수 이름에 전달되어야 하며 이는 위치 매개변수와 다릅니다. 매개변수 이름이 전달되지 않으면 호출에서 오류를 보고합니다.
>>> person('Jack', 24, 'Beijing', 'Engineer') Traceback(가장 최근 호출) last): 파일 " TypeError: person()은 2개의 위치 인수를 사용하지만 4개가 주어졌습니다 |
매개변수 이름 부족으로 인해 city 및 job 호출 시 Python 설명 구현자는 이 4개의 매개변수를 위치 매개변수로 처리하지만 person() 함수는 2개의 위치 매개변수만 허용합니다.
이름이 지정된 키워드 매개변수는 기본값(기본값)을 가질 수 있으므로 호출이 단순화됩니다.
def person(name, age, *, city='Beijing', job): print(name, age, city, job) |
명명된 키워드 매개변수 city에는 기본값이 있으므로 호출 시 도시 매개변수를 전달할 수 없습니다.
>>> ', 24 , job='Engineer') Jack 24 Beijing Engineer |
명명된 키워드 매개변수를 정의할 때 변수 매개변수가 없으면 구분 기호 *를 쓰는 것을 잊지 마세요. 그렇지 않으면 정의가 위치에 따라 정의됩니다. 매개변수.
8.2.5 등가 함수 호출
출력 결과는 동일하지만 호출 방법이 다릅니다.
참고: 함수 호출이 원하는 출력을 생성하는 한 어떤 호출 방법을 사용하는지는 중요하지 않습니다. 가장 이해하기 쉬운 호출 방법을 사용하세요.
8.2.6 빈 함수(pass)
아무것도 하지 않는 빈 함수를 정의하려면 pass 문을 사용할 수 있습니다.
def nop(): pass |
pass 문은 아무 작업도 수행하지 않습니다. Pass는 자리 표시자로 사용될 수 있습니다. 예를 들어 함수 코드를 작성하는 방법을 아직 파악하지 못한 경우 코드가 실행될 수 있도록 먼저 pass를 넣을 수 있습니다.
8.2.7 실제 매개변수 오류 방지
실제 매개변수가 제공되지 않고 실제 매개변수 순서가 잘못되었으며 실제 매개변수 형식(따옴표 등)에 주의가 기울이지 않습니다.
8.2.8 전역문(전역변수)
함수에서 전역변수에 저장된 값을 수정하려면 해당 변수에 전역문을 사용해야 합니다.
8.3 반환 값
함수는 항상 출력을 직접 표시하지는 않지만 일부 데이터를 처리하고 값 또는 값 집합을 반환할 수 있습니다. 함수가 반환하는 값을 반환값이라고 합니다. 함수의 반환 값은 return 문을 사용하여 반환됩니다.
함수 내에서 return 문을 사용하여 함수를 호출한 코드 줄에 값을 반환할 수 있습니다. 반환 값을 사용하면 프로그램의 무거운 작업 대부분을 함수로 이동하여 기본 프로그램을 단순화할 수 있습니다.
8.3.1 여러 값 반환
import math 문은 수학 패키지를 가져오는 것을 의미하며 후속 코드에서 수학 패키지의 sin, cos 및 기타 함수를 참조할 수 있습니다. 여러 값을 반환할 수 있습니다.
>>>
| 사실 이것은 단지 환상일 뿐이며 Python 함수는 여전히 단일 값을 반환합니다.
(151.96152422706632, 70.0) 반환값은 튜플입니다! 그러나 구문상 튜플을 반환할 때 괄호는 생략할 수 있으며, 여러 변수가 동시에 튜플을 받아 위치에 따라 해당 값을 할당할 수 있으므로, 파이썬의 함수는 여러 값을 반환합니다. 실제로는 튜플을 반환하지만 작성하는 것이 더 편리합니다. 8.3.2 실제 매개변수를 선택사항으로 만드세요if 문을 사용하여 이 실제 매개변수가 필요한지 여부를 결정하세요. 8.3.3 사전 반환이 함수는 목록 및 사전과 같은 보다 복잡한 데이터 구조를 포함하여 모든 유형의 값을 반환할 수 있습니다. 8.3.4 반환 함수고차 함수는 함수를 매개변수로 받는 것 외에도 함수를 결과 값으로 반환할 수도 있습니다. 즉시 합산할 필요가 없으면 합산 결과를 반환할 수 없지만 합산 함수를 반환합니다:
lazy_sum()을 호출할 때 반환은 평화의 결과가 아니라 조화 함수의 합입니다.
def get_formatted_name(first_name, last_name):
8.3.6 Closure
익명 함수 람다 x: x * x가 실제로는
키워드 람다(lambda)는 익명 함수를 나타내고, 콜론 앞의 x는 함수 매개변수를 나타냅니다. 익명 함수에는 하나의 표현식만 가질 수 있다는 제한이 있습니다. 반환 값은 표현식의 결과입니다. 익명 함수를 사용하면 함수에 이름이 없으므로 함수 이름 충돌을 걱정할 필요가 없다는 장점이 있습니다. 또한 익명 함수는 함수 개체이기도 합니다. 익명 함수를 변수에 할당한 다음 해당 변수를 사용하여 함수를 호출할 수도 있습니다.
|
위 내용은 Python 기본 소개--함수의 상세 내용입니다. 자세한 내용은 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)

뜨거운 주제











MySQL에는 무료 커뮤니티 버전과 유료 엔터프라이즈 버전이 있습니다. 커뮤니티 버전은 무료로 사용 및 수정할 수 있지만 지원은 제한되어 있으며 안정성이 낮은 응용 프로그램에 적합하며 기술 기능이 강합니다. Enterprise Edition은 안정적이고 신뢰할 수있는 고성능 데이터베이스가 필요하고 지원 비용을 기꺼이 지불하는 응용 프로그램에 대한 포괄적 인 상업적 지원을 제공합니다. 버전을 선택할 때 고려 된 요소에는 응용 프로그램 중요도, 예산 책정 및 기술 기술이 포함됩니다. 완벽한 옵션은없고 가장 적합한 옵션 만 있으므로 특정 상황에 따라 신중하게 선택해야합니다.

이 기사는 MySQL 데이터베이스의 작동을 소개합니다. 먼저 MySQLworkBench 또는 명령 줄 클라이언트와 같은 MySQL 클라이언트를 설치해야합니다. 1. MySQL-Uroot-P 명령을 사용하여 서버에 연결하고 루트 계정 암호로 로그인하십시오. 2. CreateABase를 사용하여 데이터베이스를 작성하고 데이터베이스를 선택하십시오. 3. CreateTable을 사용하여 테이블을 만들고 필드 및 데이터 유형을 정의하십시오. 4. InsertInto를 사용하여 데이터를 삽입하고 데이터를 쿼리하고 업데이트를 통해 데이터를 업데이트하고 DELETE를 통해 데이터를 삭제하십시오. 이러한 단계를 마스터하고 일반적인 문제를 처리하는 법을 배우고 데이터베이스 성능을 최적화하면 MySQL을 효율적으로 사용할 수 있습니다.

MySQL 데이터베이스 성능 최적화 안내서 리소스 집약적 응용 프로그램에서 MySQL 데이터베이스는 중요한 역할을 수행하며 대규모 트랜잭션 관리를 담당합니다. 그러나 응용 프로그램 규모가 확장됨에 따라 데이터베이스 성능 병목 현상은 종종 제약이됩니다. 이 기사는 일련의 효과적인 MySQL 성능 최적화 전략을 탐색하여 응용 프로그램이 고 부하에서 효율적이고 반응이 유지되도록합니다. 실제 사례를 결합하여 인덱싱, 쿼리 최적화, 데이터베이스 설계 및 캐싱과 같은 심층적 인 주요 기술을 설명합니다. 1. 데이터베이스 아키텍처 설계 및 최적화 된 데이터베이스 아키텍처는 MySQL 성능 최적화의 초석입니다. 몇 가지 핵심 원칙은 다음과 같습니다. 올바른 데이터 유형을 선택하고 요구 사항을 충족하는 가장 작은 데이터 유형을 선택하면 저장 공간을 절약 할 수있을뿐만 아니라 데이터 처리 속도를 향상시킬 수 있습니다.

MySQL 성능 최적화는 설치 구성, 인덱싱 및 쿼리 최적화, 모니터링 및 튜닝의 세 가지 측면에서 시작해야합니다. 1. 설치 후 innodb_buffer_pool_size 매개 변수와 같은 서버 구성에 따라 my.cnf 파일을 조정해야합니다. 2. 과도한 인덱스를 피하기 위해 적절한 색인을 작성하고 Execution 명령을 사용하여 실행 계획을 분석하는 것과 같은 쿼리 문을 최적화합니다. 3. MySQL의 자체 모니터링 도구 (showprocesslist, showstatus)를 사용하여 데이터베이스 건강을 모니터링하고 정기적으로 백업 및 데이터베이스를 구성하십시오. 이러한 단계를 지속적으로 최적화함으로써 MySQL 데이터베이스의 성능을 향상시킬 수 있습니다.

MySQL은 기본 데이터 저장 및 관리를위한 네트워크 연결없이 실행할 수 있습니다. 그러나 다른 시스템과의 상호 작용, 원격 액세스 또는 복제 및 클러스터링과 같은 고급 기능을 사용하려면 네트워크 연결이 필요합니다. 또한 보안 측정 (예 : 방화벽), 성능 최적화 (올바른 네트워크 연결 선택) 및 데이터 백업은 인터넷에 연결하는 데 중요합니다.

해시 값으로 저장되기 때문에 MongoDB 비밀번호를 Navicat을 통해 직접 보는 것은 불가능합니다. 분실 된 비밀번호 검색 방법 : 1. 비밀번호 재설정; 2. 구성 파일 확인 (해시 값이 포함될 수 있음); 3. 코드를 점검하십시오 (암호 하드 코드 메일).

HADIDB : 가볍고 높은 수준의 확장 가능한 Python 데이터베이스 HadIDB (HADIDB)는 파이썬으로 작성된 경량 데이터베이스이며 확장 수준이 높습니다. PIP 설치를 사용하여 HADIDB 설치 : PIPINSTALLHADIDB 사용자 관리 사용자 만들기 사용자 : createUser () 메소드를 작성하여 새 사용자를 만듭니다. Authentication () 메소드는 사용자의 신원을 인증합니다. Fromhadidb.operationimportuseruser_obj = user ( "admin", "admin") user_obj.

MySQL Workbench는 구성이 올바른 경우 MariadB에 연결할 수 있습니다. 먼저 커넥터 유형으로 "mariadb"를 선택하십시오. 연결 구성에서 호스트, 포트, 사용자, 비밀번호 및 데이터베이스를 올바르게 설정하십시오. 연결을 테스트 할 때는 마리아드 브 서비스가 시작되었는지, 사용자 이름과 비밀번호가 올바른지, 포트 번호가 올바른지, 방화벽이 연결을 허용하는지 및 데이터베이스가 존재하는지 여부를 확인하십시오. 고급 사용에서 연결 풀링 기술을 사용하여 성능을 최적화하십시오. 일반적인 오류에는 불충분 한 권한, 네트워크 연결 문제 등이 포함됩니다. 오류를 디버깅 할 때 오류 정보를 신중하게 분석하고 디버깅 도구를 사용하십시오. 네트워크 구성을 최적화하면 성능이 향상 될 수 있습니다
