当前位置: 首页 > news >正文

【Python精讲 02】编程第一课:彻底掌握Python变量、数字、字符串与布尔值

【Python精讲 02】编程第一课:彻底掌握Python变量、数字、字符串与布尔值

摘要:在上一篇我们搭建好了开发环境,现在是时候正式编写代码了。本文是你的Python编程第一课,将带你彻底掌握程序世界最基本的四大元素:变量(Variables)、数字(Numbers)、字符串(Strings)和布尔值(Booleans)。理解它们,是你构建一切复杂程序的基石。

前言:程序世界的“基本粒子”

欢迎来到编程的核心世界!如果说编程是构建一个数字世界,那么变量、数字、字符串和布尔值就是构成这个世界的“基本粒子”。

  • 变量是“容器”,用来存储信息。
  • 数字负责计算,是程序的数学大脑。
  • 字符串管理人文,是程序的语言文字。
  • 布尔值决定逻辑,是程序的判断标准。

本篇,我们将用最直白的方式,让你一次性彻底搞懂它们。


一、变量 (Variable):给数据贴上标签

在编程中,我们经常需要临时保存一些数据,比如用户的名字、商品的价格等。变量就是用来存储这些数据的“带标签的盒子”。

1.1 什么是变量?

想象一个储物柜,你把一个苹果放进一个格子里,并贴上标签“我的水果”。这里的“格子+苹果”就是数据,“我的水果”这个标签就是变量名。通过这个变量名,你就能随时找到并使用这个苹果。

在Python中,创建一个变量非常简单,使用赋值运算符 = 即可:

# 创建一个名为 price 的变量,并存入数字 19.9
price = 19.9# 创建一个名为 book_title 的变量,并存入一段文字
book_title = "Python从入门到精通"# 我们可以通过变量名来访问它存储的数据
print(price)         # 输出: 19.9
print(book_title)  # 输出: Python从入门到精通
1.2 Python的动态类型

Python是一门动态类型语言,这是一个对新手极其友好的特性。这意味着你不需要提前告诉Python这个“盒子”准备装什么类型的东西。它可以先装数字,回头再装文字,完全没问题。

my_box = 100
print(my_box)  # 输出: 100my_box = "你好,世界!"
print(my_box)  # 输出: 你好,世界!

Python会自动识别你赋给变量的值的类型。你可以使用内置函数 type() 来查看任何变量的类型:

print(type(100))          # <class 'int'> (整数)
print(type(19.9))         # <class 'float'> (浮点数,即小数)
print(type("你好"))       # <class 'str'> (字符串)
1.3 变量命名规范

给变量起个好名字是写出清晰代码的第一步。Python官方推荐的命名风格是蛇形命名法 (snake_case),即所有字母小写,单词之间用下划线 _ 分隔。

# 推荐
user_name = "Alice"
max_speed = 120# 不推荐
UserName = "Bob"   # 这是驼峰命名法,在Python中通常用于类名
maxspeed = 80      # 不易阅读

二、数字 (Numbers):intfloat

数字类型主要用于数学运算。Python中最常用的两种数字类型是:

  • int (Integer):整数。例如 -10, 0, 123
  • float (Floating-point number):浮点数,即小数。例如 -3.14, 0.0, 99.9

它们支持所有你熟悉的数学运算符:

a = 10
b = 3# 基本运算
print(a + b)  # 加法: 13
print(a - b)  # 减法: 7
print(a * b)  # 乘法: 30
print(a ** b) # 幂运算 (10的3次方): 1000# 除法运算的 nuances
print(a / b)  # 真除法: 3.333... (结果总是float)
print(a // b) # 地板除 (整除): 3 (结果只取整数部分)
print(a % b)  # 取模 (取余数): 1

三、字符串 (String):文本的艺术

字符串是用来表示文本数据的数据类型,所有用单引号 '...'、双引号 "..." 或三引号 """...""" 包围起来的内容都是字符串。

3.1 核心特性
  • 有序:字符串中的每个字符都有固定的位置,可以通过索引(下标)访问。索引从 0 开始。
  • 不可变:你不能修改一个已创建字符串中的某个字符。
3.2 索引与切片(极其重要)

这是操作字符串最核心的技能,像切黄瓜一样取出你需要的部分。

s = "Hello, Python"# 索引 (访问单个字符)
print(s[0])   # 'H' (第一个字符)
print(s[7])   # 'P'
print(s[-1])  # 'n' (最后一个字符,-1表示倒数第一个)# 切片 (访问一段子字符串) [start:stop:step]
# 规则:包含start,不包含stop
print(s[0:5])   # 'Hello' (从索引0到4)
print(s[7:])    # 'Python' (从索引7到末尾)
print(s[:5])    # 'Hello' (从开头到索引4)
print(s[::2])   # 'Hlo yhn' (从头到尾,步长为2,即隔一个取一个)
print(s[::-1])  # 'nohtyP ,olleH' (步长为-1,实现字符串反转)
3.3 f-string:现代化的格式化方式

当你需要将变量嵌入字符串时,f-string是目前最推荐、最直观的方式。只需在字符串的第一个引号前加上一个 f 即可。

name = "Alice"
age = 25# 使用 f-string
greeting = f"大家好,我叫{name},今年{age}岁了。"
print(greeting) # 输出: 大家好,我叫Alice,今年25岁了。```##### **3.4 常用方法**字符串自带了很多方便的“工具”(方法)来处理自己:```python
text = "  Welcome to Python!  "print(text.strip())      # 'Welcome to Python!' (去除首尾空格)
print(text.lower())      # '  welcome to python!  ' (转为小写)
print(text.upper())      # '  WELCOME TO PYTHON!  ' (转为大写)
print(text.split(' '))   # ['', '', 'Welcome', 'to', 'Python!', '', ''] (按空格分割成列表)

四、布尔值 (Boolean):TrueFalse

布尔值是程序逻辑判断的基础,它只有两个值:

  • True:真
  • False:假

它们通常是比较运算的结果,并用于 if 等条件语句中。

is_adult = 19 > 18
print(is_adult)  # 输出: Truehas_money = 0 > 100
print(has_money) # 输出: False
4.1 逻辑运算符

and, or, not 用于组合多个布尔表达式:

  • and (与):两边都为 True 时,结果才为 True
  • or (或):只要有一边为 True,结果就为 True
  • not (非):取反。
is_raining = True
has_umbrella = Falsego_outside = not is_raining or has_umbrella
print(go_outside)  # 输出: False (因为 (not True) or False -> False or False -> False)
4.2 “真值"与"假值”

在Python中,所有数据类型都可以被当作布尔值来判断。以下值被认为是“假值”(Falsy),其他都为“真值”(Truthy)。

  • False
  • None (空值)
  • 所有值为 0 的数字 (如 0, 0.0)
  • 所有空的容器 (如 "", [], {})

这个特性在后续写判断语句时非常有用,可以写出更简洁的代码。


总结

在本篇中,我们学习了Python世界最基础的四种数据类型,它们是我们构建程序的“砖块”。

  • 变量:通过名字存储数据的“盒子”,是动态类型的。
  • 数字 (int, float):用于数学计算。
  • 字符串 (str):用于表示文本,核心操作是索引和切片,推荐使用f-string进行格式化。
  • 布尔值 (bool)TrueFalse,是逻辑判断的基石。

现在你已经掌握了这些“基本粒子”,是时候学习如何将它们组织起来了。

预告:【Python精讲 #03】Python核心容器:一篇通关序列(List, Tuple)、映射(Dict)与集合(Set)

http://www.dtcms.com/a/392227.html

相关文章:

  • Unity2D-Sprite
  • 本地实现视频分析与总结工具
  • Vue 开发常见报错及解决方案指南
  • Linux 进程状态
  • 基于自然语言处理的文本敏感内容检测系统的设计与实现
  • JDBC小白入门项目创建 IDEA 空项目+模块配置 JavaWeb MySQL
  • 笔记 Docker(离线)安装(24.0.9)
  • Docker-Android+cpolar:移动开发的环境革命
  • uniapp首先对战匹配简单实现
  • [bitcoin白皮书_2] 隐私 | 计算
  • 【杂谈】-重构注意力经济:人工智能重塑短视频内容生态
  • 【杂谈】Godot 4.5下载指南
  • CICD工具选型,Jenkins VS Arbess哪一款更好用?
  • iOS 26 续航测试实战,如何测电池掉电、Adaptive Power 模式功耗、新系统更新后的耗电差异与 App 续航优化指南
  • 数据挖掘与KDD:从理论到实践的最佳流程解析
  • 深入理解Linux网络中的Socket网络套接字——基础概念与核心实现
  • Spark专题-第二部分:Spark SQL 入门(4)-算子介绍-Exchange
  • Spark专题-第二部分:Spark SQL 入门(3)-算子介绍-Aggregate
  • Go基础:Go语言中集合详解(包括:数组、切片、Map、列表等)
  • 《算法闯关指南:优选算法--滑动窗口》--09长度最小的子数串,10无重复字符的最长字串
  • 请卸载xshell,一款国产的终端工具,界面漂亮,功能强大,支持win,mac,linux平台,安全免费
  • 用批处理文件实现Excel和word文件的重造
  • unseping(反序列化漏洞)
  • 麒麟系统 word转为pdf
  • 【Codex CLI 配置指南(小白速通版)】
  • R及RStudio的配置与安装
  • 深度解析:基于 ODBC连接 KingbaseES 数据库的完整操作与实践
  • springboot川剧科普平台(代码+数据库+LW)
  • Vue中的监听方式
  • CentOS 7系统解决yum报错