作者:Li-zHihuAn | 来源:互联网 | 2024-12-08 13:32
本文由编程笔记小编整理,旨在介绍 Python 第三天学习的相关知识点,帮助读者深入理解 Python 编程的核心概念。
目录
一、字符编码
a.字符编码基础
b.字符编码的工作原理
c.文本编辑器与字符编码
d.程序执行与字符编码
二、文件处理
1.文件处理的基本流程
2.文件打开模式详解
3.文件内的光标控制
4.上下文管理器的使用
三、函数
1.数学函数与 Python 函数的区别
2.使用函数的优势
3.函数与过程的区别
4.函数参数详解
5.函数的返回值
6.自定义函数的创建
7.函数的调用方式
一、字符编码
a.字符编码基础
字符编码是计算机用于识别和处理字符的一套规则。每种字符集都有其对应的编码方式,常见的编码方式有 ASCII、UTF-8 等。
b.字符编码的工作原理
计算机只能处理数字,因此需要将字符转换为数字才能进行处理。这个转换过程就是通过字符编码来实现的。例如,'A' 在 ASCII 编码中对应的数字是 65。
c.文本编辑器与字符编码
为了防止文件出现乱码,文本编辑器在保存文件时会指定一种编码方式。打开文件时,也应使用相同的编码方式,否则可能会导致乱码。
d.程序执行与字符编码
Python 解释器在执行脚本时,会根据文件头部的编码声明(如 #coding:utf-8)来读取文件内容。如果未指定编码,默认情况下 Python 2 使用 ASCII 编码,Python 3 使用 UTF-8 编码。
二、文件处理
1.文件处理的基本流程
文件处理的基本步骤包括:打开文件、读写文件、关闭文件。这些操作可以通过文件句柄来完成。
f = open('file.txt', 'r') # 打开文件
cOntent= f.read() # 读取文件内容
print(content) # 输出文件内容
f.close() # 关闭文件
2.文件打开模式详解
文件打开模式决定了文件的读写方式。常见的模式有:
- 'r': 只读模式,文件必须存在。
- 'w': 只写模式,如果文件不存在则创建,存在则清空内容。
- 'a': 追加模式,如果文件不存在则创建,存在则在末尾追加内容。
- 'r+': 读写模式,文件必须存在。
- 'w+': 读写模式,如果文件不存在则创建,存在则清空内容。
- 'a+': 读写模式,如果文件不存在则创建,存在则在末尾追加内容。
- 'b': 以二进制方式操作文件。
3.文件内的光标控制
可以使用 `seek` 方法来移动文件内的光标位置,使用 `tell` 方法来获取当前光标的位置。
with open('file.txt', 'r', encoding='utf-8') as f:
print(f.read(4)) # 读取前4个字符
with open('file.txt', 'r', encoding='utf-8') as f:
f.seek(3) # 移动光标到第3个字符
print(f.tell()) # 获取当前光标位置
print(f.read()) # 从当前光标位置继续读取内容
4.上下文管理器的使用
使用 `with` 语句可以自动管理文件的打开和关闭,避免忘记关闭文件导致资源泄露。
with open('file1.txt', 'r', encoding='utf-8') as f1, open('file2.txt', 'w', encoding='utf-8') as f2:
cOntent= f1.read()
f2.write(content)
三、函数
1.数学函数与 Python 函数的区别
数学函数是一个等式,输入一个值,输出一个结果。Python 函数则是封装了一系列操作的代码块,可以接受参数并返回结果。虽然两者都能接受输入并产生输出,但 Python 函数可以修改外部状态。
2.使用函数的优势
使用函数可以提高代码的复用性和可维护性。例如,将重复的代码封装成函数,可以在多处调用,减少代码冗余。
def send_email(message):
# 发送邮件的逻辑
connect_to_server()
send_message(message)
close_connection()
while True:
if cpu_usage > 90:
send_email('CPU usage alert')
if disk_usage > 90:
send_email('Disk usage alert')
if memory_usage > 80:
send_email('Memory usage alert')
3.函数与过程的区别
在 Python 中,过程是没有返回值的函数。但实际上,即使没有显式地使用 `return` 语句,Python 函数也会返回 `None`。
def process():
print('This is a process')
result = process()
print(result) # 输出: None
4.函数参数详解
Python 函数支持多种参数类型,包括位置参数、关键字参数、默认参数和可变长参数。
def greet(name, age, gender='male'):
print(f'Hello {name}, you are {age} years old and your gender is {gender}.')
greet('Alice', 30)
5.函数的返回值
函数可以通过 `return` 语句返回一个或多个值。如果不使用 `return` 语句,函数默认返回 `None`。
def add(a, b):
return a + b
result = add(3, 5)
print(result) # 输出: 8
6.自定义函数的创建
自定义函数需要先定义后使用。定义函数时,可以使用 `def` 关键字,函数体中可以包含任何合法的 Python 代码。
def custom_function(param1, param2):
result = param1 + param2
return result
print(custom_function(10, 20)) # 输出: 30
7.函数的调用方式
函数可以按无参或有参的方式调用,也可以嵌套调用。
def simple_func():
print('This is a simple function')
simple_func()
def parameterized_func(name):
print(f'Hello, {name}')
parameterized_func('Bob')
def nested_func(x, y):
return x + y
result = nested_func(nested_func(1, 2), 3)
print(result) # 输出: 6