一、python常用内置对象
1、常量与变量
常量即字面值无法改变的量,例如一个确定的数字、列表、字符串,如“Hello world”就是一个典型的字符串常量,变量是指值可以发生改变的量,在python中,不仅变量的值可以任意变化,变量的值也可以随时发生改变。这是因为python变量并不直接存储值,而是存储了值的内存地址或者引用。
2、数字类型
Python 中的数字类型主要分为两大类:整型(Integer)和浮点型(Float),以及一些特殊的数字类型,比如布尔型(Boolean)和复数类型(Complex)。
整型(Integer):
整型是没有小数部分的数字,可以是正数、负数或零。整数类型除了常见的十进制,还有二进制、八进制和十六进制。
在Python中,可以使用不同的进制来表示数字。常见的进制包括二进制、八进制、十进制和十六进制。
二进制:以0b或0B开头,例如0b1010表示二进制的1010,即十进制的10。
八进制:以0o或0O开头,例如0o12表示八进制的12,即十进制的10。
十进制:通常的数字表示方式,不需要前缀,例如10表示十进制的10。
十六进制:以0x或0X开头,例如0x10表示十六进制的10,即十进制的16。
补充:进制转换
Python还提供了内置函数来进行进制之间的转换:
bin(x):将x转换为二进制字符串。
oct(x):将x转换为八进制字符串。
hex(x):将x转换为十六进制字符串。
int(x, base):将x字符串转换为十进制整数,base是x的进制。
在 Python中,整型是没有大小限制的,可以表示任意大小的整数。
示例:10, -23, 0
浮点型(Float):
浮点型是带有小数部分的数字,可以是正数、负数或零。
示例:3.14, -0.001, 42.0
注意:浮点型在 Python中有一定的精度限制,因此实数运算有一定的误差,应尽量避免在实数之间直接进行相等性测试,而是应该以二者之差的绝对值是否足够小作为实数相等的依据。
布尔型(Boolean):
布尔型实际上是一种特殊的整型,它只有两个值:True 和 False。
在 Python 中,True 被视为 1,False 被视为 0。
复数类型(Complex):
复数类型用于表示带有实部和虚部的数字。
复数使用 j 或 J 来表示虚部。
示例:3+4j, 1.0-2.0j
Python 还提供了丰富的内置函数来处理这些数字类型,比如类型转换函数(int(), float(), complex())和数学运算函数(在 math 模块中)。通过这些函数,你可以方便地在不同类型的数字之间进行转换,以及执行各种数学计算。
3、python序列结构
在Python中,列表(List)是一种基本的数据结构,它可以包含零个或多个元素,这些元素可以是不同的数据类型(如整数、字符串、浮点数等)。列表是可变的(Mutable),意味着我们可以在创建后修改列表的内容。
创建列表有多种方式:
一、使用方括号:可以直接使用方括号[]来创建一个列表,并用逗号,分隔列表中的元素。
my_list = [1, 2, 3, 'Hello', 3.14]
print(my_list)
使用list()函数:可以使用list()函数将其他数据类型转换为列表。例如,将字符串转换为字符列表,或将元组转换为列表。
my_string = "Hello"
my_list = list(my_string)
print(my_list)
当一个列表不再使用时,可以通过del命令将其删除。
my_list = [1, 2, 3]
del my_list
现在my_list不再存在,尝试访问它将引发错误
补充:如果只想删除列表中的某些元素,而不是整个列表,可以使用以下方法:
remove(value):删除列表中的第一个匹配项。
pop(index):删除指定位置的元素,并返回该元素的值。
del语句:也可以用来删除指定位置的元素,而不是整个列表。
通过索引访问列表元素
列表中的每个元素都有一个索引,索引从0开始。可以使用索引来访问列表中的任何元素。
my_list = ['a', 'b', 'c', 'd']
print(my_list[0]) 输出 'a'
print(my_list[3]) 输出 'd'
列表元素还支持负整数作为下标。
my_list = ['a', 'b', 'c', 'd']
print(my_list[-1]) 输出 'd'
print(my_list[-3]) 输出 'b'
元组(Tuple)是一种与列表类似的有序序列,但元组元素是不可变的。
在Python中,字典(Dictionary)是一种非常常用的数据结构,用于存储键值对。下面将详细介绍字典的创建、删除与访问方法。
Python提供了多种方式来创建字典,以下是一些常见的方法:
使用花括号:
直接使用花括号{}来创建字典,键值对之间用逗号,分隔,键和值之间用冒号:分隔。
my_dict = {"apple": 1, "banana": 2, "orange": 3}
使用dict()函数:
通过dict()函数可以从其他形式的数据(如关键字参数、可迭代对象等)创建字典。
关键字参数:my_dict = dict(apple=1, banana=2, orange=3)
可迭代对象(如列表的列表、元组的列表等):tuple_dict = dict([('name', 'Alice'), ('age', 25), ('city', 'New York')])
删除字典元素可以通过del命令实现:
删除字典中的某个键值对:del my_dict['apple']
删除整个字典:del my_dict
Python主要使用方括号[]来访问字典中的值
集合(set)是python中一种无序可变序列
二、Python运算符与表达式
Python中的算术运算符是用于执行基本数学运算的符号。它们包括加法、减法、乘法、除法、取余、幂运算和整除等。以下是对Python中常用算术运算符的详细解释:
-
加法运算符 (+)
作用:将两个操作数相加或者用于列表、元组、字符串的连接。
示例:a = 5; b = 3; c = a + b; print(c) 输出 8。
"abcd"+"1234"="abcd1234" -
减法运算符 (-)
作用:从第一个操作数中减去第二个操作数。
示例:a = 10; b = 3; c = a - b; print(c) 输出 7。 -
乘法运算符 (*)
作用:将两个操作数相乘。
示例:a = 7; b = 2; c = a * b; print(c) 输出 14。
补充:乘法运算符还可用于列表、元组和字符串这几个序列类型与整数的乘法,表示序列元素的重复,并生成新的序列对象。
-
除法运算符 (/)
作用:将第一个操作数除以第二个操作数,结果为浮点数。
示例:a = 10; b = 3; c = a / b; print(c) 输出 3.3333333333333335(由于浮点数表示的限制,结果可能不完全精确)。 -
取余运算符 (%)
作用:返回第一个操作数除以第二个操作数的余数。
示例:a = 10; b = 3; c = a % b; print(c) 输出 1。 -
幂运算符 (**)
作用:将第一个操作数的值提升到第二个操作数的幂次方。
示例:a = 2; b = 3; c = a ** b; print(c) 输出 8。 -
整除运算符 (//)
作用:将第一个操作数除以第二个操作数并向下取整,结果为整数。
示例:15//4=3,15//4=3.0,-15//4=-4。
通过熟练掌握这些算术运算符及其优先级,可以在Python编程中高效地进行数学运算。
在Python中,关系运算符用于比较两个值之间的关系。它们返回一个布尔值(True或False),表示比较的结果。以下是一些常用的Python关系运算符:
大于 (>)
检查左侧的值是否大于右侧的值。
示例:5 > 3 返回 True。
小于 (<)
检查左侧的值是否小于右侧的值。
示例:2 < 4 返回 True。
等于 (==)
检查两个值是否相等。
示例:3 == 3 返回 True。
不等于 (!=)
检查两个值是否不相等。
示例:4 != 5 返回 True。
大于等于 (>=)
检查左侧的值是否大于或等于右侧的值。
示例:5 >= 5 返回 True。
小于等于 (<=)
检查左侧的值是否小于或等于右侧的值。
示例:3 <= 4 返回 True。
这些关系运算符可以用于数值、字符串以及其他可比较的数据类型之间的比较。它们经常用于条件语句(如if语句)中,以控制程序的流程。
Python中的逻辑运算符用于连接布尔表达式,根据这些表达式的真假值来执行相应的操作。Python提供了三种基本的逻辑运算符:and(与)、or(或)和not(非)。以下是对这三种逻辑运算符的详细解释: -
and 运算符
作用:and运算符用于连接两个布尔表达式。当且仅当两个表达式都为True时,整个表达式的结果才为True。如果任一表达式为False,则整个表达式的结果为False。
示例:
python
a = 5
b = 10
if a > 3 and b < 15:
print("a 大于 3 且 b 小于 15")
else:
print("至少有一个条件不满足")
在这个例子中,因为a > 3和b < 15都为True,所以整个if条件为真,执行打印操作。 -
or 运算符
作用:or运算符也用于连接两个布尔表达式。只要有一个表达式为True,整个表达式的结果就为True。如果两个表达式都为False,则整个表达式的结果为False。
示例:
python
a = 5
b = 5
if a > 3 or b < 3:
print("a 大于 3 或者 b 小于 3")
else:
print("两个条件都不满足")
在这个例子中,因为a > 3为True,所以整个if条件为真,执行打印操作。 -
not 运算符
作用:not运算符用于反转一个布尔表达式的值。如果表达式为True,not会将其变为False;反之亦然。
示例:
a = 5
if not a > 10:
print("a 不大于 10")
else:
print("a 大于 10")
在这个例子中,因为a > 10为False,所以not a > 10为True,执行打印操作。
在Python中,逻辑运算符的优先级从高到低为:not、and、or。这意味着在没有括号的情况下,not运算会首先被计算,然后是and运算,最后是or运算。可以使用括号来改变优先级。
逻辑运算符的短路特性
对于and运算,如果第一个表达式为False,则整个表达式的结果已经确定为False,此时Python不会计算第二个表达式,这称为“短路”。
对于or运算,如果第一个表达式为True,则整个表达式的结果已经确定为True,此时Python不会计算第二个表达式,这同样称为“短路”。
逻辑运算符在Python编程中非常有用,特别是在进行条件判断和控制流程时。通过组合使用逻辑运算符,可以创建复杂的条件判断逻辑,从而增强程序的灵活性和功能。
Python集合运算符是Python语言中用于对集合进行操作的特殊符号,它们可以帮助我们方便地进行集合的并、交、差和补等运算。集合是Python中的一种数据类型,由多个不重复元素组成的无序集,集合中的元素是不可变的。 -
并运算符 (|)
作用:用于求两个集合的并集,即将两个集合中的所有元素合并在一起,去除重复的元素。
示例:如果集合A={1,2,3},集合B={3,4,5},则A|B的结果是{1,2,3,4,5}。 -
交运算符 (&)
作用:用于求两个集合的交集,即找出两个集合中共有的元素。
示例:如果集合A={1,2,3},集合B={3,4,5},则A&B的结果是{3}。 -
差运算符 (-)
作用:用于求两个集合的差集,即找出属于第一个集合但不属于第二个集合的元素。
示例:如果集合A={1,2,3},集合B={3,4,5},则A-B的结果是{1,2}。 -
对称差运算符 (^)
作用:用于求两个集合的对称差集,即找出两个集合中不重复的元素。需要注意的是,这里的“补集”说法可能有些误导,因为在集合论中补集通常指的是相对于某个全集的补,而对称差更准确地描述了这种两个集合间不重复元素的集合。
示例:如果集合A={1,2,3},集合B={3,4,5},则A^B的结果是{1,2,4,5}。
通过灵活运用集合运算符,我们可以快速实现对集合的各种操作需求,从而简化代码的编写和逻辑的实现。
在Python中,成员判断运算符主要用于判断一个元素是否存在于某个序列(如列表、元组、字符串或集合)中。Python提供了两种成员判断运算符:
in 运算符
作用:判断某个元素是否存在于指定的序列中。
示例:x in s,如果x是序列s的元素,则返回True,否则返回False。
not in 运算符
作用:判断某个元素是否不存在于指定的序列中。如果x不是序列s的元素,则返回True,否则返回False。
my_list = [1, 2, 3, 4, 5]
print(3 in my_list) 输出: True
print(6 in my_list) 输出: False
print(3 not in my_list) 输出: False
print(6 not in my_list) 输出: True
成员判断运算符在处理序列类型的数据时非常有用,可以快速判断某个元素是否属于该序列,从而进行相应的逻辑处理。
三、Python中的选择结构和循环结构是编程中用于控制程序流程的基本结构。下面是对这两种结构的简要介绍:
1、选择结构允许程序根据条件执行不同的代码块。Python中主要的选择结构有if语句和if-else语句。
一)if语句:如果条件为真,则执行代码块。
if 条件:
条件为真时执行的代码
二)if-else语句:如果条件为真,则执行第一个代码块;否则,执行第二个代码块。
if 条件:
条件为真时执行的代码
else:
条件为假时执行的代码
三)if-elif-else语句:可以根据多个条件执行不同的代码块。
if 条件1:
条件1为真时执行的代码
elif 条件2:
条件2为真时执行的代码
else:
所有条件都不为真时执行的代码
2、循环结构允许程序重复执行一段代码,直到满足特定条件。Python中主要的循环结构有for循环和while循环。
一)for循环:用于遍历序列(如列表、元组、字符串)或其他可迭代对象。
for 变量 in 序列:
循环体代码
补充:range()函数:用来生成一个整数序列,返回的是一个可迭代的“range”对象
range 函数可以有一到三个参数
一个参数:range(stop):生成从 0 到 stop-1 的整数序列。 eg:range(3) 生成 0, 1, 2。
两个参数:range(start, stop):生成从 start 到 stop-1 的整数序列。 eg:range(1, 4) 生成 1, 2, 3。
三个参数:range(start, stop, step):生成从 start 开始,以 step 为步长,到 stop-1 结束的序列。 eg:range(1, 8, 2) 生成 1, 3, 5, 7。
ps:range(a, b)遵循左闭右开
二)while循环:只要条件为真,就重复执行代码块。
while 条件:
条件为真时执行的代码
3、跳出循环
一)break语句:用于立即退出循环
while 条件:
if 某个条件:
break 立即退出循环
其他代码
二)continue语句:用于跳过当前循环的剩余部分,并继续下一个循环迭代。
for 变量 in 序列:
if 某个条件:
continue 跳过当前循环的剩余部分
其他代码
四、函数定义与使用
def 函数名([参数列表]):
函数体
五、文件操作
Python 提供了多种内置函数和模块来操作文件,包括打开、读取、写入和关闭文件等。以下是一些基本的文件操作:
打开文件
使用 open() 函数打开文件,它返回一个文件对象,然后可以对这个文件进行读取或写入操作。
f = open('example.txt', 'r') # 打开文件以读取 ('r'), 默认模式也是读取
读取整个文件
content = f.read()
print(content)
写入文件
使用 'w' 模式打开文件可以写入内容,如果文件已存在则会覆盖原有内容。使用 'a' 模式可以在文件末尾追加内容。
关闭文件
操作完成后,应该关闭文件以释放系统资源。可以使用 close() 方法关闭文件。
f.close()
使用 with 语句
with 语句可以自动管理文件的打开和关闭,即使在读取或写入文件时发生异常也能保证文件正确关闭。
with open('example.txt', 'r') as f:
content = f.read()
print(content)
这些是 Python 文件操作的基本内容。通过组合使用这些操作,可以处理大多数的文件读写需求。
六、基本输入输出
输入输出
print():基础控制台输出
直接输出字符串要使用引号包裹
print("hello, world")
使用“end”来控制输出结尾(默认以\n(换行)结尾)
print("hello, world",end="") #不换行结束
print("hello, world",end="") #以作为结尾
print("hello, world",end="\t") #以tab作为结尾
括号中直接填入变量名可输出变量的内容
x = 10
print(x) #输出10