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

liftword3个月前 (03-25)技术文章17

在 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中三个双引号的作用

python三引号允许一个字符串跨多行,字符串中可以包含换行符、制表符以及其他特殊字符。三引号的语法是一对连续的单引号或者双引号(通常都是成对的用)。作用一:进行多行注释我们都知道Python中注释是...

「Python打印输出」使用单引号、双引号、三引号打印输出

功能要求编写一个Python应用程序,分别使用单引号、双引号和三引号打印输出“hello world!”实现步骤1.创建一个Python文件,分别使用单引号、双引号和三引号打印输出“hello wor...

Python 基础教程二之Python3 基础语法

标识符第一个字符必须是字母表中字母或下划线 _ 。标识符的其他的部分由字母、数字和下划线组成。标识符对大小写敏感。在 Python 3 中,可以用中文作为变量名,非 ASCII 标识符也是允许的了。p...

云计算开发学习笔记:Python3注释

大家在学习各种编程语言的时候都会在代码里面添加一些注释,这个也是为了方便日后对代码的查找和修改,各种编程语言的注释方式略有不同,Python3语言也一样有自己的注释方式,下面我们来了解一下都有哪几种。...

python中单引号,双引号,多引号区别

先说1双引号与3个双引号的区别,双引号所表示的字符串通常要写成一行如:s1 = "hello,world"如果要写成多行,那么就要使用\ (“连行符”)吧,如s2 = "hello,\world"s2...

Python 中的变量、数据类型和运算符

Python 是一种适合初学者的编程语言,它使得处理数据变得容易。理解变量、数据类型和运算符是编写 Python 程序的基础。让我们以简单明了的方式分解这些概念。Python 中的变量一个变量就像是一...