Python 是一种用途广泛的编程语言,广泛应用于数据分析、网络开发、自动化等领域。本文将详细介绍 Python 的基础知识,包括数据类型、函数、排序方法以及高阶函数的使用。
目录
1. 数据类型
1.1 整除与幂运算
整除 (//
):执行整数除法,只保留整数部分。
result = 7 // 3 # 结果是 2
幂运算 (**
):计算一个数的幂。
result = 2 ** 3 # 结果是 8
1.2 字符串操作
重复字符串:使用 *
运算符重复字符串。
repeated_str = "abc" * 3 # 结果是 "abcabcabc"
切片:通过索引切片提取子字符串。
substring = "Hello, World!"[0:5] # 结果是 "Hello"
步长切片:通过步长参数从字符串中提取字符。
step_str = "abcdefgh"[::2] # 结果是 "aceg"
2. 函数与参数
2.1 函数定义与调用
函数通过 def
关键字定义,return
用于返回结果。
def greet(name="World"):
return f"Hello, {name}!"
message = greet("Alice")
print(message) # 输出: Hello, Alice!
2.2 函数参数
- 位置参数:按顺序传递的参数。
- 关键字参数:通过参数名传递的参数。
- 默认参数:在定义函数时为参数设定默认值。
- 可变参数:
*args
:接收任意数量的位置参数。**kwargs
:接收任意数量的关键字参数。def print_info(name, age=25, *hobbies, **kwargs): print(f"Name: {name}, Age: {age}") print("Hobbies:", ", ".join(hobbies)) for key, value in kwargs.items(): print(f"{key}: {value}") print_info("Alice", 30, "reading", "travelling", city="New York", occupation="Engineer")
2.3 返回多个值
Python 函数可以通过返回元组同时返回多个值。
def get_coordinates():
return 10, 20
x, y = get_coordinates()
print(f"x: {x}, y: {y}") # 输出: x: 10, y: 20
3. 列表与元组
3.1 列表操作
列表是可变的数据结构,支持元素的添加、删除和修改。
添加元素:使用 append()
方法。
numbers = [1, 2, 3]
numbers.append(4) # 结果: [1, 2, 3, 4]
删除元素:使用 remove()
或 pop()
方法。
numbers.remove(2) # 删除值为 2 的元素
修改元素:通过索引修改元素值。
numbers[0] = 10 # 将第一个元素修改为 10
3.2 元组操作
元组是不可变的数据结构,一旦创建,元素不可更改。
coordinates = (10, 20)
print(coordinates) # 输出: (10, 20)
4. 排序
4.1 排序方法
list.sort()
:对列表进行原地排序,不返回新列表。
numbers = [3, 1, 4, 1, 5]
numbers.sort() # 结果: [1, 1, 3, 4, 5]
sorted()
:返回排序后的新列表。
sorted_numbers = sorted(numbers) # 结果: [1, 1, 3, 4, 5]
4.2 排序参数
- key 参数:指定排序的关键属性。
- reverse 参数:控制是否降序排序。
students = [{'name': 'Alice', 'grade': 90}, {'name': 'Bob', 'grade': 85}, {'name': 'Charlie', 'grade': 95}] sorted_students = sorted(students, key=lambda x: x['grade'], reverse=True) # 结果: [{'name': 'Charlie', 'grade': 95}, {'name': 'Alice', 'grade': 90}, {'name': 'Bob', 'grade': 85}]
5. 高阶函数
5.1 map()
函数
map()
函数将指定的函数应用于序列中的每个元素,并返回结果。
squared = list(map(lambda x: x**2, [1, 2, 3, 4]))
print(squared) # 输出: [1, 4, 9, 16]
5.2 filter()
函数
filter()
函数过滤序列中的元素,保留符合条件的元素。
even_numbers = list(filter(lambda x: x % 2 == 0, [1, 2, 3, 4, 5]))
print(even_numbers) # 输出: [2, 4]
5.3 reduce()
函数
reduce()
函数对序列中的元素进行累积计算。需导入 functools
模块。
from functools import reduce
product = reduce(lambda x, y: x * y, [1, 2, 3, 4])
print(product) # 输出: 24
本文详细介绍了 Python 的基础知识,包括数据类型、函数、列表与元组的操作、排序以及高阶函数,希望能够对读者有所帮助,也欢迎前辈前来交流指导。