>  기사  >  백엔드 개발  >  Python: 초보자부터 전문가까지(3부)

Python: 초보자부터 전문가까지(3부)

WBOY
WBOY원래의
2024-07-19 19:59:11470검색

Python의 함수

함수는 특정 작업을 수행하는 재사용 가능한 코드 블록입니다. 코드를 정리하고, 읽기 쉽게 만들고, 반복을 줄이는 데 도움이 됩니다. 예를 들어, 너무 길어서 읽기가 매우 어려운 코드를 작성하거나 주로 가치를 호출해야 할 때 각 줄의 기능을 찾는 경우를 생각해 보세요.

    def greet(name):

왜 함수를 사용하는가?

복잡한 식사를 요리하고 있다고 상상해 보세요. 모든 것을 한 번에 처리하려고 하는 대신 야채 자르기, 소스 준비, 메인 요리 요리 등의 작은 작업으로 프로세스를 나눕니다. 이러한 각 작업은 프로그래밍의 기능으로 생각할 수 있습니다.

모든 코드로 전체 식사를 방해할 필요 없이 필요할 때 호출할 수 있는 섹션을 각각 배치하여 코드를 더 쉽게 읽고 오류를 줄일 수 있습니다.

기능을 통해 다음을 수행할 수 있습니다.

  • 코드 구성: 레시피의 재료와 단계를 구성하는 것처럼 함수는 코드를 관리 가능하고 논리적인 부분으로 구성하는 데 도움이 됩니다.
  • 코드 재사용: 동일한 작업을 여러 번 수행해야 하는 경우 동일한 코드를 반복해서 작성하는 대신 함수를 만들어 필요할 때마다 호출할 수 있습니다.
  • 복잡한 작업 단순화: 큰 문제는 더 작고 관리하기 쉬운 조각으로 나눌 수 있습니다.
  • 가독성 향상: 이름이 잘 지정된 함수를 사용하면 레시피의 명확한 지침처럼 코드를 더 쉽게 이해할 수 있습니다.

실제 사례:

  • 계산기 앱: 각 연산(더하기, 빼기, 곱하기, 나누기)은 별도의 기능일 수 있습니다.
  • 소셜 미디어 게시물: 기능을 통해 텍스트 게시, 이미지 업로드, 해시태그 추가를 처리할 수 있습니다.
  • 온라인 쇼핑: 함수를 통해 총 비용을 계산하고 할인을 적용하거나 결제를 처리할 수 있습니다.

이제 함수를 생성하고 정의하는 방법을 살펴보겠습니다.

def greet(name):
    """
    This function takes a name and returns a greeting message.
    """
    return f"Hello, {name}! Welcome to Python programming."

이것을 분석

  • def는 Python에게 함수를 정의하고 있음을 알려줍니다.
  • Greeting은 함수 이름입니다(이름은 원하는 대로 변경할 수 있습니다!)
  • (Alex)는 매개변수입니다. 함수가 수신할 데이터에 대한 자리 표시자

들여쓰기 블록은 함수 본문, 즉 함수가 수행하는 작업입니다.

return specifies what the function gives back when it's done

함수 사용(호출)

# Calling the function
message = greet("Alex")
print(message)


greet("Alex"):
  • 이것은 우리가 기능을 "호출"하거나 "사용"하는 것입니다.
  • "안녕하세요, 'greet'라는 함수, 'Alex'를 입력으로 받아주세요."라고 말하는 중입니다.
  • "Alex"가 인수입니다. 이는 함수에 작업할 특정 정보를 제공하는 것과 같습니다.

함수 내부에서 일어나는 일:

  • 이 함수는 "Alex"를 가져와 인사말에서 {name}이(가) 있는 위치에 배치합니다.
  • 그래서 "안녕하세요, Alex! Python 프로그래밍에 오신 것을 환영합니다."라는 메시지가 생성됩니다.

    메시지 = ...:

  • 'message'라는 변수에 함수가 돌려주는(returns) 내용을 저장하고 있습니다.

  • 이제 '메시지'에는 "안녕하세요, Alex! Python 프로그래밍에 오신 것을 환영합니다."라는 텍스트가 포함됩니다.

    인쇄(메시지):

  • 단순히 '메시지'의 내용을 화면에 표시하는 기능입니다.

Python: From Beginners to Pro (Part 3)

“이렇게 출력됩니다: "안녕하세요, Alex! Python 프로그래밍에 오신 것을 환영합니다."
여기서 "Alex"는 인수, 즉 함수에 전달하는 실제 데이터입니다.

더 복잡한 예:
장바구니에 담긴 품목의 총 비용을 계산하는 함수를 만들어 보겠습니다.

def calculate_total(items, tax_rate):
    subtotal = sum(items)
    tax = subtotal * tax_rate
    total = subtotal + tax
    return total

    # Using the function
    cart = [10.99, 5.50, 8.99]
    tax = 0.08  # 8% tax
    total_cost = calculate_total(cart, tax)
    print(f"Your total including tax is: ${total_cost:.2f}")

이 예에서는 항목과 세금 세율을 함수의 인수로 배치하고 함수가 따라야 할 몇 가지 명확한 매개 변수를 만드는 두 개 이상의 인수를 탐색했습니다.

  • subtotal = sum(items) - subtotal은 계산하는 값에 대한 변수 또는 자리 표시자, 즉 합계입니다(sum은 '시작' 값의 합계를 반환하는 Python의 라이브러리입니다(기본값). : 0) + 반복 가능한 숫자) 항목.

  • tax = subtotal * Tax_rate 여기서는 세금을 새 변수로 사용하고 해당 변수에서는 이전 변수 subtotal(sum(items)) * Tax_rate를 사용합니다. 사용자가 입력하는 숫자입니다.

  • 총액 = 소계 + 세금; 소계와 세금이라는 두 변수의 합입니다.

calculate_total(cart, Tax) 함수를 호출하면 장바구니는 장바구니에 있는 모든 값(10.99+5.50+8.99)을 합산한 다음 해당 값에 0.08을 곱하여 세금을 구한 다음 이를 더합니다. 합계를 얻으려면.

우리의 print 문은 형식화된 문자열을 사용하고 total_cost를 소수점 이하 2자리까지 줄여야 한다고 말했습니다.

주요사항

  • Function Names: Use clear, descriptive names. calculate_total is better than calc or function1.
  • Parameters: These are the inputs your function expects. In calculate_total, we have two: items and tax_rate.
  • Return Statement: This specifies what the function gives back. Not all functions need to return something, but many do.
  • Indentation: Everything inside the function must be indented. This is how Python knows what's part of the function.
  • Calling the Function: We use the function name followed by parentheses containing the arguments.

Practice Exercise:
Try creating a function that takes a person's name and age, and returns a message like "Hello [name], you will be [age+10] in 10 years." This will help you practice using multiple parameters and doing calculations within a function.

Python Data Structures: Lists, Sets, Tuples, and Dictionaries

Python offers several built-in data structures that allow programmers to organize and manipulate data efficiently. we'll explore four essential data structures: lists, sets, tuples, and dictionaries. Each of these structures has unique characteristics and use cases.

Lists
Lists are the most commonly used data structure in Python. They are ordered, mutable collections that can contain elements of different data types. You can create a list using square brackets:

fruits = ["apple", "banana", "cherry"]

Lists maintain the order of elements, allowing you to access them by their index. For example, fruits[0] would return "apple". This ordering makes lists ideal for situations where the sequence of elements matters, such as maintaining a playlist or a to-do list.

One of the key advantages of lists is their mutability. You can easily add, remove, or modify elements:

fruits.append("date")  # Adds "date" to the end
fruits[1] = "blueberry"  # Replaces "banana" with "blueberry"

Lists also support various operations like slicing, concatenation, and list comprehensions, making them extremely versatile. Use lists when you need an ordered collection that you can modify and when you want to allow duplicate elements.

To learn more about lists, check this guide by Bala Priya C (Lists in Python – A Comprehensive Guide)

Sets
Sets are unordered collections of unique elements. You can create a set using curly braces or the set() function.

unique_numbers = {1, 2, 3, 4, 5}

The defining feature of sets is that they only store unique elements. If you try to add a duplicate element, it will be ignored. This makes sets perfect for removing duplicates from a list or for membership testing.

Sets also support mathematical set operations like union, intersection, and difference:

set1 = {1, 2, 3}
set2 = {3, 4, 5}
print(set1.union(set2))  # {1, 2, 3, 4, 5}

While sets are mutable (you can add or remove elements), they must be immutable. Use sets when you need to ensure uniqueness of elements and don't care about their order.

To learn more about sets, check this guide on w3school

Tuples
Tuples are similar to lists in that they are ordered sequences, but they are immutable – once created, they cannot be modified. You create a tuple using parentheses:

coordinates = (10, 20)

The immutability of tuples makes them useful for representing fixed collections of items, like the x and y coordinates in our example. They're also commonly used to return multiple values from a function.

def get_user_info():
    return ("Alice", 30, "New York")

name, age, city = get_user_info()

Tuples can be used as dictionary keys (unlike lists) because of their immutability. Use tuples when you have a collection of related items that shouldn't change throughout your program's execution.

If you need more insight on tuples, Geeksforgeeks has a very informative guide on it

Dictionaries: Key-Value Pairs
Dictionaries are unordered collections of key-value pairs. They provide a way to associate related information. You create a dictionary using curly braces with key-value pairs:

person = {"name": "Alex", "age": 25, "city": "San Francisco"}

Dictionaries allow fast lookup of values based on their keys. You can access, add, or modify values using their associated keys:

 print(person["name"])  # Prints "Alex"
 person["job"] = "Engineer"  # Adds a new key-value pair

Dictionaries are incredibly useful for representing structured data, similar to JSON. They're also great for counting occurrences of items or creating mappings between related pieces of information.

I love what Simplilearn did with this guide on dictionary; find it here.

Choosing the Right Data Structure

When deciding which data structure to use, consider these factors:

  • 질서를 유지해야 하나요? 그렇다면 목록이나 튜플을 고려해보세요.
  • 컬렉션을 수정해야 하나요? 그렇다면 목록이나 사전을 사용하세요.
  • 고유성을 보장해야 하나요? 그렇다면 세트를 사용하세요.
  • 값을 키와 연결해야 합니까? 그렇다면 사전을 사용하세요.
  • 불변 시퀀스가 ​​필요합니까? 그렇다면 튜플을 사용하세요.

이러한 데이터 구조와 이를 사용하는 시기와 방법을 이해하면 보다 효율적이고 읽기 쉬운 코드를 작성하는 데 도움이 됩니다. 경험이 쌓이면 특정 요구 사항에 가장 적합한 구조에 대한 직관을 갖게 될 것입니다.

Python의 유연성 덕분에 필요할 때 이러한 구조 간에 변환할 수 있습니다. 예를 들어 목록을 집합으로 변환하여 중복 항목을 제거한 다음 순서를 유지해야 하는 경우 다시 목록으로 변환할 수 있습니다. 이러한 상호 운용성은 이러한 데이터 구조를 조합하여 사용할 때 더욱 강력해집니다.

어떻게 하나요? 이를 알아보고 Python 학습 그룹의 댓글 세션에 게시하세요.

목록, 집합, 튜플 및 사전을 마스터하면 Python에서 다양한 데이터 조작 작업을 처리하기 위한 견고한 기반을 갖게 됩니다. 프로그래밍 여정을 진행하면서 훨씬 더 전문적인 데이터 구조를 발견하게 되지만 이 네 가지는 Python 프로그래밍 툴킷의 기본 도구로 남을 것입니다.

위 내용은 Python: 초보자부터 전문가까지(3부)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.