百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

Python 基础入门:变量与数据类型全解析

itomcoil 2025-02-26 12:28 20 浏览

在 Python 的编程世界里,变量与数据类型是基础中的基础,就像盖房子的基石,掌握好它们,才能构建出更复杂、更强大的程序。今天,就让我们一起深入了解 Python 中的变量以及常见的数据类型:数字、字符串、列表、元组、字典和集合。

一、变量:数据的 “小标签”

变量,简单来说,就是给数据起的一个名字,是程序中存储数据的 “小标签”。在 Python 中,变量的使用十分灵活,因为它是动态类型语言,变量的类型由赋给它的值来决定 。比如:

x = 10  # 此时x是整数类型,就像给整数10贴上了x这个标签
x = "Python"  # 这里x又变成了字符串类型,标签x现在贴在了字符串“Python”上

变量命名规则

  • 组成规则:变量名由字母、数字和下划线组成,但不能以数字开头。例如user_name、price2、_count都是合法的变量名;而2nd_place(数字开头)、user-name(含减号)则是错误的命名。
  • 大小写敏感:Age和age是两个不同的变量,就好比两个不同的 “小标签”。
  • 避开关键字:Python 有一些保留的关键字,像if、for、class等,不能用作变量名。比如class = "A"就会报错,因为class是关键字。

二、数字类型:数学运算的基石

数字类型是 Python 中最基本的数据类型之一,主要包含整数(int)和浮点数(float)。

整数(int)

整数就是没有小数部分的数字,例如42、-3 。在 Python 中,整数的取值范围只受限于计算机的内存大小,这意味着它可以处理非常大的整数,而不用担心溢出问题。比如计算阶乘:

n = 10
factorial = 1
for i in range(1, n + 1):
    factorial *= i
print(factorial)  # 这里可以轻松计算出10的阶乘,结果是3628800

浮点数(float)

浮点数是带有小数点的数字,如3.14、-0.5 。它用于表示更精确的数值计算。不过,由于计算机存储浮点数的方式是基于二进制的近似表示,在进行一些浮点数运算时可能会出现精度问题。例如:

print(0.1 + 0.2)  # 理论上应该是0.3,但实际输出可能是0.30000000000000004

如果需要高精度的计算,可以使用decimal模块来处理浮点数运算。

三、字符串:文本处理的利器

字符串(str)是由字符组成的序列,用单引号(' ')或双引号(" ")括起来都可以,比如'Hello'、"Python" 。

字符串的操作

  • 拼接:可以使用+运算符将多个字符串连接起来 。
str1 = "Hello"
str2 = "World"
result = str1 + " " + str2
print(result)  # 输出:Hello World
  • 索引和切片:通过索引可以获取字符串中的单个字符,索引从 0 开始;切片则可以获取字符串的一部分。
s = "Python"
print(s[0])  # 输出:P,获取第一个字符
print(s[1:3])  # 输出:yt,获取第二个和第三个字符
  • 常用方法:字符串有很多实用的方法,比如split()用于分割字符串,replace()用于替换字符串中的内容等。
s = "apple,banana,orange"
fruits = s.split(",")
print(fruits)  # 输出:['apple', 'banana', 'orange']
new_s = s.replace("apple", "grape")
print(new_s)  # 输出:grape,banana,orange

四、列表:有序可变的集合

列表(list)是一种有序的、可变的容器类型,可以包含不同类型的元素,用方括号[ ]表示 。

列表的操作

  • 添加元素:使用append()方法可以在列表末尾添加一个元素,insert()方法可以在指定位置插入元素。
my_list = [1, 2, 3]
my_list.append(4)
print(my_list)  # 输出:[1, 2, 3, 4]
my_list.insert(1, 5)
print(my_list)  # 输出:[1, 5, 2, 3, 4]
  • 删除元素:使用del语句可以删除指定位置的元素,remove()方法可以删除指定值的元素。
del my_list[2]
print(my_list)  # 输出:[1, 5, 3, 4]
my_list.remove(5)
print(my_list)  # 输出:[1, 3, 4]
  • 切片操作:和字符串类似,列表也可以进行切片操作,获取其中的一部分元素。
my_list = [1, 2, 3, 4, 5]
print(my_list[1:3])  # 输出:[2, 3]

五、元组:有序不可变的序列

元组(tuple)和列表很相似,也是有序的对象集合,但元组是不可变的,一旦创建就不能修改,用圆括号( )表示 。

元组的特点

  • 不可变性:这使得元组在一些场景下比列表更安全,比如作为字典的键时,元组是可以的,而列表不行。
my_tuple = (1, "a", True)
#下面这行代码会报错,因为元组不能修改
my_tuple[0] = 2
  • 创建方式:可以直接用圆括号括起来,也可以省略圆括号。
t1 = (1, 2, 3)
t2 = 1, 2, 3  # 这种方式也可以创建元组

六、字典:键值对的映射

字典(dict)是一种无序的键值对集合,用花括号{ }表示,每个键值对之间用冒号:分隔 。

字典的操作

  • 添加和修改:通过键来访问和修改对应的值,如果键不存在则会添加新的键值对。
my_dict = {"name": "Bob", "age": 30}
my_dict["age"] = 31  # 修改age的值
my_dict["city"] = "New York"  # 添加新的键值对
print(my_dict)  # 输出:{'name': 'Bob', 'age': 31, 'city': 'New York'}
  • 删除元素:使用del语句可以删除指定键的键值对。
del my_dict["city"]
print(my_dict)  # 输出:{'name': 'Bob', 'age': 31}
  • 遍历字典:可以通过keys()方法遍历键,values()方法遍历值,items()方法遍历键值对。
for key in my_dict.keys():
    print(key)
for value in my_dict.values():
    print(value)
for key, value in my_dict.items():
    print(key, value)

七、集合:无序唯一的元素集

集合(set)是一个无序的、不包含重复元素的集合,用花括号{ }表示,不过空集合需要用set()来创建 。

集合的特性

  • 唯一性:集合会自动去除重复的元素。
my_set = {1, 2, 2, 3, 3, 3}
print(my_set)  # 输出:{1, 2, 3}
  • 无序性:集合中的元素没有固定的顺序,每次输出的顺序可能不同。
my_set = {1, 2, 3}
print(my_set)  # 可能输出:{1, 2, 3},也可能是其他顺序

集合的操作

  • 添加元素:使用add()方法添加单个元素,update()方法可以添加多个元素。
my_set = {1, 2, 3}
my_set.add(4)
print(my_set)  # 输出:{1, 2, 3, 4}
my_set.update([5, 6])
print(my_set)  # 输出:{1, 2, 3, 4, 5, 6}
  • 集合运算:集合支持交集(intersection)、并集(union)、差集(difference)等运算,就像数学中的集合运算一样。
set1 = {1, 2, 3}
set2 = {2, 3, 4}
print(set1.intersection(set2))  # 输出:{2, 3},交集
print(set1.union(set2))  # 输出:{1, 2, 3, 4},并集
print(set1.difference(set2))  # 输出:{1},差集

掌握了变量与这些常见的数据类型,你就已经迈出了 Python 编程的重要一步。在后续的学习中,你会发现它们在各种编程场景中发挥着巨大的作用。多动手实践,尝试用不同的数据类型解决实际问题,相信你会对 Python 编程有更深入的理解 。如果你还想了解更多关于数据类型转换、可变与不可变类型的区别等内容,欢迎继续关注我们的 Python 教程系列哦!

相关推荐

Python Qt GUI设计:将UI文件转换Python文件三种妙招(基础篇—2)

在开始本文之前提醒各位朋友,Python记得安装PyQt5库文件,Python语言功能很强,但是Python自带的GUI开发库Tkinter功能很弱,难以开发出专业的GUI。好在Python语言的开放...

Connect 2.0来了,还有Nuke和Maya新集成

ftrackConnect2.0现在可以下载了--重新设计的桌面应用程序,使用户能够将ftrackStudio与创意应用程序集成,发布资产等。这个新版本的发布中还有两个Nuke和Maya新集成,...

Magicgui:不会GUI编程也能轻松构建Python GUI应用

什么是MagicguiMagicgui是一个Python库,它允许开发者仅凭简单的类型注解就能快速构建图形用户界面(GUI)应用程序。这个库基于Napari项目,利用了Python的强大类型系统,使得...

Python入坑系列:桌面GUI开发之Pyside6

阅读本章之后,你可以掌握这些内容:Pyside6的SignalsandSlots、Envents的作用,如何使用?PySide6的Window、DialogsandAlerts、Widgets...

Python入坑系列-一起认识Pyside6 designer可拖拽桌面GUI

通过本文章,你可以了解一下内容:如何安装和使用Pyside6designerdesigner有哪些的特性通过designer如何转成python代码以前以为Pyside6designer需要在下载...

pyside2的基础界面(pyside2显示图片)

今天我们来学习pyside2的基础界面没有安装过pyside2的小伙伴可以看主页代码效果...

Python GUI开发:打包PySide2应用(python 打包pyc)

之前的文章我们介绍了怎么使用PySide2来开发一个简单PythonGUI应用。这次我们来将上次完成的代码打包。我们使用pyinstaller。注意,pyinstaller默认会将所有安装的pack...

使用PySide2做窗体,到底是怎么个事?看这个能不能搞懂

PySide2是Qt框架的Python绑定,允许你使用Python创建功能强大的跨平台GUI应用程序。PySide2的基本使用方法:安装PySide2pipinstallPy...

pycharm中conda解释器无法配置(pycharm安装的解释器不能用)

之前用的好好的pycharm正常配置解释器突然不能用了?可以显示有这个环境然后确认后可以conda正在配置解释器,但是进度条结束后还是不成功!!试过了pycharm重启,pycharm重装,anaco...

Conda使用指南:从基础操作到Llama-Factory大模型微调环境搭建

Conda虚拟环境在Linux下的全面使用指南:从基础操作到Llama-Factory大模型微调环境搭建在当今的AI开发与数据分析领域,conda虚拟环境已成为Linux系统下管理项目依赖的标配工具。...

Python操作系统资源管理与监控(python调用资源管理器)

在现代计算环境中,对操作系统资源的有效管理和监控是确保应用程序性能和系统稳定性的关键。Python凭借其丰富的标准库和第三方扩展,提供了强大的工具来实现这一目标。本文将探讨Python在操作系统资源管...

本地部署开源版Manus+DeepSeek创建自己的AI智能体

1、下载安装Anaconda,设置conda环境变量,并使用conda创建python3.12虚拟环境。2、从OpenManus仓库下载代码,并安装需要的依赖。3、使用Ollama加载本地DeepSe...

一文教会你,搭建AI模型训练与微调环境,包学会的!

一、硬件要求显卡配置:需要Nvidia显卡,至少配备8G显存,且专用显存与共享显存之和需大于20G。二、环境搭建步骤1.设置文件存储路径非系统盘存储:建议将非安装版的环境文件均存放在非系统盘(如E盘...

使用scikit-learn为PyTorch 模型进行超参数网格搜索

scikit-learn是Python中最好的机器学习库,而PyTorch又为我们构建模型提供了方便的操作,能否将它们的优点整合起来呢?在本文中,我们将介绍如何使用scikit-learn中的网格搜...

如何Keras自动编码器给极端罕见事件分类

全文共7940字,预计学习时长30分钟或更长本文将以一家造纸厂的生产为例,介绍如何使用自动编码器构建罕见事件分类器。现实生活中罕见事件的数据集:背景1.什么是极端罕见事件?在罕见事件问题中,数据集是...