欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 资讯 > python3自学笔记

python3自学笔记

2025/9/23 0:42:20 来源:https://blog.csdn.net/qq_35526165/article/details/142567422  浏览:    关键词:python3自学笔记

Python简介

Python是一种高级编程语言,由Guido van Rossum于1991年首次发布。它具有简洁易读的语法,强大的社区支持和丰富的库,广泛应用于Web开发、数据分析、人工智能、科学计算等领域。

特点

  • 易学易用:直观的语法,适合初学者。
  • 跨平台:可以在多种操作系统上运行。
  • 丰富的库:包括数据科学、Web开发、图像处理等多种库。

免费GPT工具

  • https://ai-to.cn/url/?u=kimi
  • https://turbodesk.xfyun.cn/home?channelid=gj3
  • https://ibiling.cn/?from=tomyres

环境搭建

1. 安装Python

从Python官网下载并安装最新版本。

2. 配置IDE

推荐使用以下IDE:

  • PyCharm:功能强大,适合大型项目。
  • VSCode:轻量级,扩展丰富。
  • Jupyter Notebook:适合数据分析和可视化。

3. 创建虚拟环境

使用venv创建独立的开发环境,避免库冲突。

# 创建虚拟环境
python -m venv myenv
# 激活虚拟环境
# Windows
myenv\Scripts\activate
# Mac/Linux
source myenv/bin/activate

基础语法

数据类型

  • 数字:整数(int)、浮点数(float)、复数(complex
  • 字符串:字符序列,支持多种操作
  • 布尔TrueFalse
# 示例
int_var = 42
float_var = 3.14
complex_var = 1 + 2j
string_var = "Hello, Python!"
bool_var = True

变量

Python中的变量不需要声明,直接赋值即可。命名规则:字母、数字、下划线组成,不能以数字开头。

name = "Alice"
age = 30

运算符

  • 算术运算符+, -, *, /, //, %, **
  • 比较运算符==, !=, >, <, >=, <=
  • 逻辑运算符and, or, not
result = (5 > 3) and (10 < 15)  # True

控制结构

  • 条件语句
if age >= 18:print("Adult")
elif age >= 13:print("Teenager")
else:print("Child")
  • 循环结构
for i in range(5):print(i)while age > 0:age -= 1

函数

使用def定义函数,支持参数和返回值。

def greet(name):return f"Hello, {name}!"message = greet("Alice")

注释

使用#进行单行注释,使用'''"""进行多行注释。

# 这是一个单行注释"""
这是一个多行注释
可以写很多内容
"""

数据结构

列表

列表是可变的序列,可以存储多个元素,并支持索引。

fruits = ['apple', 'banana', 'cherry']
fruits.append('orange')  # 添加元素
print(fruits[1])         # 输出: banana

元组

元组是不可变的序列,使用小括号。

coordinates = (10.0, 20.0)
print(coordinates[0])  # 输出: 10.0

集合

集合是无序且不重复的元素集合。

unique_numbers = {1, 2, 3, 3}  # {1, 2, 3}
unique_numbers.add(4)           # 添加元素

字典

字典是键值对的数据结构,支持快速查找。

person = {"name": "Alice", "age": 30}
print(person["name"])  # 输出: Alice

遍历数据结构

使用for循环遍历列表、元组、字典和集合。

# 遍历列表
for fruit in fruits:print(fruit)# 遍历字典
for key, value in person.items():print(key, value)

模块与包

自定义模块

创建.py文件作为模块,使用import导入。

# my_module.py
def hello():return "Hello, World!"# main.py
import my_module
print(my_module.hello())

标准库

Python内置了丰富的标准库,如mathossys等。

import math
print(math.sqrt(16))  # 输出: 4.0

文件操作

读写文本文件

# 写入文件
with open('file.txt', 'w') as f:f.write("Hello, World!\n")# 读取文件
with open('file.txt', 'r') as f:content = f.read()print(content)

读写CSV文件

使用csv模块处理CSV文件。

import csv# 写入CSV文件
with open('data.csv', 'w', newline='') as csvfile:writer = csv.writer(csvfile)writer.writerow(['Name', 'Age'])writer.writerow(['Alice', 30])writer.writerow(['Bob', 25])# 读取CSV文件
with open('data.csv', 'r') as csvfile:reader = csv.reader(csvfile)for row in reader:print(row)

读写JSON文件

使用json模块处理JSON格式的数据。

import json# 写入JSON文件
data = {"name": "Alice", "age": 30}
with open('data.json', 'w') as jsonfile:json.dump(data, jsonfile)# 读取JSON文件
with open('data.json', 'r') as jsonfile:loaded_data = json.load(jsonfile)print(loaded_data)

异常处理

使用tryexcept进行异常处理,确保代码的健壮性。

try:result = 10 / 0
except ZeroDivisionError as e:print(f"Error occurred: {e}")
finally:print("Execution completed.")

面向对象编程

类与对象

Python支持面向对象编程,可以创建类和实例化对象。

class Dog:def __init__(self, name):self.name = name  # 实例属性def bark(self):return f"{self.name} says woof!"dog = Dog("Buddy")
print(dog.bark())  # 输出: Buddy says woof!

构造方法

__init__是构造方法,用于初始化对象属性。

class Person:def __init__(self, name, age):self.name = nameself.age = agejohn = Person("John", 25)
print(john.name, john.age)  # 输出: John 25

继承

支持类的继承,可以重用和扩展已有的类。

class Animal:def speak(self):return "Animal speaks"class Cat(Animal):def speak(self):return "Meow"cat = Cat()
print(cat.speak())  # 输出: Meow

多态

通过父类引用调用子类的方法,实现多态性。

def make_sound(animal):print(animal.speak())make_sound(dog)  # 输出: Buddy says woof!
make_sound(cat)  # 输出: Meow

私有属性与方法

使用双下划线前缀定义私有属性和方法。

class Account:def __init__(self, balance):self.__balance = balance  # 私有属性def __private_method(self):  # 私有方法return "This is a private method."def get_balance(self):return self.__balanceaccount = Account(1000)
print(account.get_balance())  # 输出: 1000
# print(account.__private_method())  # 会报错

函数式编程

匿名函数

使用lambda关键字创建匿名函数。

add = lambda x, y: x + y
print(add(5, 3))  # 输出: 8

高阶函数

接受函数作为参数或返回一个函数。

def apply_function(func, x, y):return func(x, y)result = apply_function(add, 5, 3)  # 输出: 8

map、filter 和 reduce

  • map:对可迭代对象的每个元素应用函数。
  • filter:过滤可迭代对象中的元素。
  • reduce:对可迭代对象中的元素进行累积计算(需导入functools模块)。
from functools import reducenumbers = [1, 2, 3, 4, 5]# 使用map
squared = list(map(lambda x: x ** 2, numbers))  # [1, 4, 9, 16, 25]# 使用filter
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))  # [2, 4]# 使用reduce
sum_result = reduce(lambda x, y: x + y, numbers)  # 15

常用标准库

  • os:与操作系统交互。
  • sys:与Python解释器交互。
  • datetime:处理日期和时间。
  • math:数学运算。
  • random:生成随机数。
  • re:正则表达式处理。
  • requests:发送HTTP请求。

第三方库

  • requests:简化HTTP请求。
  • numpy:高效数组计算。
  • pandas:数据分析与处理。
  • matplotlib:数据可视化。

安装第三方库:

pip install requests

常见问题与解决

  1. 找不到模块:确保已安装并激活虚拟环境。
  2. 版本冲突:检查库的版本要求,使用pip install指定版本。
  3. 语法错误:仔细检查代码中的拼写和缩进。
  4. 运行时错误:使用try...except捕捉并处理异常。

学习资源

  • Python官方文档
  • LeetCode - 编程练习
  • Coursera - 在线课程
  • Codecademy - 交互式学习平台
  • Kaggle - 数据科学与机器学习竞赛平台
  • YouTube - 查找Python学习相关视频教程

希望这份详细的Python3自学笔记能帮助你更好地学习和掌握Python编程!如果有任何问题,欢迎随时提问。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词