【机器学习】超简明Python基础教程

ops/2024/11/25 16:58:05/

Python是一种简单易学、功能强大的编程语言,适用于数据分析、人工智能、Web开发、自动化脚本等多个领域。本教程面向零基础学习者,逐步讲解Python的基本概念、语法和操作。


1. 安装与运行

安装Python
  • 从官网 Welcome to Python.org 下载适合自己系统的安装包。
  • 推荐选择3.x版本,安装时勾选“Add Python to PATH”以便命令行使用。
运行Python代码
  1. 交互模式:直接在终端输入python进入交互环境。
  2. 脚本模式:保存代码到.py文件中,在终端使用python filename.py运行。

2. 基本语法

Hello, World!
python">print("Hello, World!")

输出:

Hello, World!
变量与数据类型

Python是一种动态类型语言,不需要显式声明变量类型。

python"># 整数
x = 10
# 浮点数
y = 3.14
# 字符串
name = "Python"
# 布尔值
flag = Trueprint(x, y, name, flag)

输出:

10 3.14 Python True
注释
  • 单行注释使用#
    python"># 这是一个单行注释
  • 多行注释使用三引号:
    python">"""
    这是一个多行注释
    可以包含多行内容
    """
    

3. 数据结构

3.1 列表 (List)

列表是一个可变、有序的容器,可以存储多个数据。

python">fruits = ["apple", "banana", "cherry"]
print(fruits[0])  # 输出第一个元素
fruits.append("orange")  # 添加元素
print(fruits)

输出:

apple
['apple', 'banana', 'cherry', 'orange']
3.2 元组 (Tuple)

元组是不可变的有序容器。

colors = ("red", "green", "blue")
print(colors[1])  # 输出第二个元素

输出:

green
3.3 字典 (Dictionary)

字典是键值对的集合。

python">person = {"name": "Alice", "age": 25}
print(person["name"])  # 输出键对应的值
person["city"] = "New York"  # 添加键值对
print(person)

输出:

Alice
{'name': 'Alice', 'age': 25, 'city': 'New York'}
3.4 集合 (Set)

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

python">unique_numbers = {1, 2, 3, 3, 4}
print(unique_numbers)  # 重复元素会自动去除

输出:

python">{1, 2, 3, 4}

4. 控制结构

4.1 条件语句
python">x = 10
if x > 0:print("Positive")
elif x == 0:print("Zero")
else:print("Negative")
4.2 循环
  • for循环

    python">for i in range(5):print(i)
    
  • while循环

    python">n = 0
    while n < 5:print(n)n += 1
    

5. 函数

函数用来封装代码,方便重复调用。

python">def greet(name):return f"Hello, {name}!"print(greet("Alice"))

输出:

python">Hello, Alice!

6. 文件操作

6.1 读取文件
python">with open("example.txt", "r") as file:content = file.read()print(content)
6.2 写入文件
python">with open("output.txt", "w") as file:file.write("Hello, Python!")

7. 模块与包

Python中有丰富的标准库和第三方模块。

  • 导入模块
    python">import math
    print(math.sqrt(16))
    
  • 输出:

    4.0
    
  • 安装第三方库:
    在终端运行 pip install library_name


8. 错误处理

通过try-except捕获异常,避免程序崩溃。

python">try:result = 10 / 0
except ZeroDivisionError:print("不能除以零")

输出:

不能除以零

9. 面向对象编程

Python支持面向对象的开发。

python">class Person:def __init__(self, name, age):self.name = nameself.age = agedef greet(self):return f"Hi, I'm {self.name} and I'm {self.age} years old."p = Person("Alice", 25)
print(p.greet())

输出:

Hi, I'm Alice and I'm 25 years old.

10. 数据可视化

使用matplotlib绘图。

python">import matplotlib.pyplot as pltx = [1, 2, 3, 4]
y = [2, 4, 6, 8]
plt.plot(x, y)
plt.title("Line Graph")
plt.xlabel("X-axis")
plt.ylabel("Y-axis")
plt.show()

总结

通过学习本教程,你掌握了Python的基础语法和操作。从数据结构到文件操作,再到模块和错误处理,每一部分都是编程的基础。接下来可以尝试更多高级内容,比如数据分析、Web开发或机器学习等方向!


http://www.ppmy.cn/ops/136625.html

相关文章

机器翻译 数据集 (NLP基础 - 预处理 → tokenize → 词表 → 截断/填充 → 迭代器) + 代码实现 —— 笔记3.9《动手学深度学习》

目录 0. 前言 1. 下载和预处理数据集 2. 词元化 (tokenize) 3. 词表 (Vocab) 4. 加载数据集 (填充/截断) 5. 迭代器 (iterator) 6. 小结 0. 前言 课程全部代码&#xff08;pytorch版&#xff09;已上传到附件本章节为原书第9章(现代循环网络)&#xff0c;共分为8节&…

计算机网络实验 DNS协议分析与测量

1. 实验目的 了解互联网的域名结构、域名系统DNS及其域名服务器的基本概念 熟悉DNS协议及其报文基本组成、DNS域名解析原理 掌握常用DNS测量工具dig使用方法和DNS测量的基本技术 2. 实验环境 硬件要求&#xff1a;阿里云云主机ECS 一台。 软件要求&#xff1a;Linux/ Wind…

【SpringBoot】 数据库查询超时配置

文章目录 1. 简介1.1 介绍数据库超时配置的重要性1.2 概述Spring Boot在数据库连接中的应用 2. 配置文件层面处理超时2.1 Spring Boot数据库连接的基本配置2.2 常用的数据库连接池HikariCP如何在Spring Boot中配置HikariCPHikariCP的关键超时参数 Tomcat JDBC PoolDruid连接池关…

Unity3D基于ECS的游戏逻辑线程详解

前言 Unity3D是一款非常流行的游戏开发引擎&#xff0c;其采用的是组件实体系统&#xff08;ECS&#xff09;架构&#xff0c;这种架构可以让游戏开发者更加高效地管理游戏逻辑线程。本文将详细介绍Unity3D基于ECS的游戏逻辑线程&#xff0c;并给出技术详解以及代码实现。 对…

Go消费kafka中kafkaReader.FetchMessage(ctx)和kafkaReader.ReadMessage(ctx)的区别

在Go语言的Kafka消费中&#xff0c;kafkaReader.FetchMessage(ctx) 和 kafkaReader.ReadMessage(ctx) 都是用来从Kafka中消费消息的&#xff0c;但它们的用法和功能有一些细微的区别。以下是两者的主要区别&#xff1a; 1. FetchMessage(ctx) 功能&#xff1a;FetchMessage 从…

nohup java -jar supporterSys.jar --spring.profiles.active=prod

文章目录 1、ps -ef | grep java2、kill 13713、ps -ef | grep java4、nohup java -jar supporterSys.jar --spring.profiles.activeprod &5、ps -ef | grep java1. 启动方式进程 1371进程 19994 2. 主要区别3. 可能的原因4. 建议 1、ps -ef | grep java rootshipper:~# p…

Java开发经验——SpringRestTemplate常见错误

摘要 本文分析了在使用Spring框架的RestTemplate发送表单请求时遇到的常见错误。主要问题在于将表单参数错误地以JSON格式提交&#xff0c;导致服务器无法正确解析参数。文章提供了错误案例的分析&#xff0c;并提出了修正方法。 1. 表单参数类型是MultiValueMap RestControl…

实验二 系统响应及系统稳定性

实验目的 &#xff08;1&#xff09;学会运用Matlab 求解离散时间系统的零状态响应&#xff1b; &#xff08;2&#xff09;学会运用Matlab 求解离散时间系统的单位取样响应&#xff1b; &#xff08;3&#xff09;学会运用Matlab 求解离散时间系统的卷积和。 实验原理及实…