Python是一门简单的编程语言,适用于人工智能、web应用、爬虫程序、大数据等方面
一、Python语言特点
Python 是一种功能强大且流行的编程语言,具有许多特点,其中一些包括:
1. **易学易用**
Python 的语法简洁清晰,类似于英语,易于学习和理解,使得初学者能够快速上手。
2. **开源和免费**:
Python 是开源的,可以免费使用,而且有一个庞大的社区支持和贡献,提供了大量的库和工具。
3. **跨平台**:
Python 可以在各种操作系统上运行,包括 Windows、MacOS 和各种 Linux 发行版,实现了跨平台的灵活性。
4. **面向对象**:
Python 支持面向对象编程(OOP),允许开发者使用类和对象来组织和管理代码,提高了代码的重用性和可维护性。
5. **动态类型**:
Python 是一种动态类型语言,不需要显式声明变量类型,可以在运行时自动推断变量类型,简化了代码编写过程。
6. **丰富的标准库**:
Python 提供了丰富的标准库,涵盖了各种任务和功能,例如文件操作、网络通信、数据处理等,使得开发更加便捷。
7. **支持多种编程范式**:
除了面向对象编程,Python 还支持函数式编程、过程式编程等多种编程范式,使得开发者有更多选择和灵活性。
8. **广泛应用**:
Python 在数据科学、人工智能、Web 开发、自动化脚本等领域都有着广泛的应用,成为一种多功能的通用编程语言。
二、Python基础语法
运算符
'''
算术运算符:
+ :加
- :减
* :乘
/ :除
//:整除(取商的整数部分)
% : 取模-返回除法的余数
**: 幂-返回x的y次方 x**y比较运算符(关系运算符):
==:等于
!=:不等于
>:大于
<:小于
>=:大于等于
<=:小于等于逻辑运算符:
and:与
or:或
not:非赋值运算符:
=:赋值
+=:加后赋值
-=:减后赋值
*=:乘后赋值
/=:除后赋值
//=:整除后赋值
%=:取模后赋值
**=:指数后赋值位运算符:
&:按位与
|:按位或
^:按位异或
~:按位取反
<<:左移
>>:右移成员运算符:
in:如果在指定的序列中找到值返回 True,否则返回 False
not in:如果在指定的序列中没有找到值返回 True,否则返回 False身份运算符:
is:判断两个标识符是不是引用自一个对象 类似于id(x) == id(y)
is not:判断两个标识符是不是引用自不同对象'''
1、注释
单行注释 以 #开头
多行注释 以 '''注释内容''' 为标准 也可选择 """注释内容"""
2、print输出函数
1)、 函数原型 :
values:表示要输出的值,每个值之间用 ‘ ,’隔开(逗号),输出结果默认每个值之间用空格隔开
sep: 打印输出值时,多个值之间的间隔方式,默认为空格间隔,可以自定义
end:打印输出完成之后的结束符号 默认换行('\n'),可设置'\t'等
file :设置输出对象,即把print中的值打印到什么地方,默认输出到终端,可以设置file=文件储存对象,把内容存到文件中。
flush :该参数主要是刷新,默认False,关闭再刷新,Ture为实时刷新。
2)、基本用法
输出结果:
3、赋值
在 Python 中,变量赋值是指将一个值存储在变量中。当你给变量赋值时,实际上就是在创建该变量并将一个特定的值与之关联起来。
在 Python 中,变量的值是可以随时更改的,你可以在程序的执行过程中多次赋值给同一个变量,也可以修改变量的值。
1)单个赋值
a = 1
b = 2
c = 3
2)多个赋值
a = b = c = 4
a,b, c = 1, 2,3
结果:
4、input函数
1、基本概念
在 Python 中,`input()` 函数用于从用户(标准输入)处获取输入,并将用户输入的内容作为字符串返回。这个函数允许程序与用户进行交互,接收用户输入的数据,然后可以对这些数据进行处理和操作。
2、基本语法:
输出结果:
需要注意的是,input()
函数始终返回一个字符串类型的值,即使用户输入的是数字或其他类型的内容,程序也会将其作为字符串处理。如果需要将用户输入的内容转换为其他类型,如整数或浮点数,可以使用相应的类型转换函数(如 int()
、float()
)对用户输入进行转换。
三、标准数据类型
在 Python 中,标准数据类型指的是内置的基本数据类型,用于存储不同种类的数据。Python 的标准数据类型包括以下几种:
1. 数字(Numbers):用于存储数值数据,包括整数(int)、浮点数(float)、复数(complex)等。
2. 字符串(String):用于存储文本数据,以单引号、双引号或三引号括起来。
3. 列表(List):有序、可变的集合,可以存储多个元素,用方括号 `[ ]` 表示。
4. 元组(Tuple):有序、不可变的集合,可以存储多个元素,用圆括号 `( )` 表示。
5. 集合(Set):无序、可变的集合,不允许重复元素,用大括号 `{ }` 表示。
6. 字典(Dictionary):无序的键值对集合,用大括号 `{ }` 表示,每个元素包含一个键和对应的值。
7. 布尔值(Boolean):表示真(True)或假(False)的逻辑值。
8. 空值(None):表示空对象或空值。
1、数字类型
Numbers支持三种不同的数值类型 分别是整型(int)、浮点型(float)以及复数型(complex)
1、整数(int)
用于表示整数值,可以是正数、负数或零,例如:-5、0、100。
2、浮点数(float)
用于表示带有小数部分的数值,例如:3.14、-0.001、2.0。
3、复数(complex)
用于表示具有实部和虚部的复数,形式为 a + bj
,其中 a
和 b
分别表示实部和虚部的数值,例如:3+4j。
数字类型的转换
int(x)
:将 x 转换为整数类型。如果 x 是浮点数,则截取其整数部分并舍弃小数部分;如果 x 是字符串,则必须是表示整数的字符串,例如 "123"
,否则会抛出 ValueError 异常。
float(x)
:将 x 转换为浮点数类型。如果 x 是整数,则将其转换为浮点数;如果 x 是字符串,则必须是表示浮点数的字符串,例如 "3.14"
,否则会抛出 ValueError 异常。
complex(x)
:将 x 转换为复数类型。如果 x 是整数或浮点数,则表示其实部,虚部为 0;如果 x 是形如 a+bj
的字符串,则解析出实部和虚部并返回相应的复数。
数学函数
应用示例
输出结果
2、字符串类型(str/bytes)
Python 有两种不同的字符串
string:一个用于存储文本,文本字符串内部使用Unicode存储
bytes :一个用于存储原始字节,字节字符串存储原始字节并显示ASCII ( 0-255 )
1)切片
切片是指对操作的对象截取其中一部分的操作。切片的语法∶[起始:结束:步长]特点∶左闭右开
2)转换
encode()
方法是用于将字符串转换为字节串(bytes 类型),并指定字符编码方式。它适用于处理字符串到字节串的转换。
decode()
方法是用于将字节串(bytes 类型)转换为字符串,并指定字符编码方式。它适用于处理字节串到字符串的转换。
示例
结果
字符串函数
-
len(s)
: 返回字符串 s 的长度。 -
str.upper()
: 将字符串转换为大写形式。 -
str.lower()
: 将字符串转换为小写形式。 -
str.strip()
: 去除字符串两端的空格或指定字符。 -
str.replace(old, new)
: 将字符串中的指定子串 old 替换为新的子串 new。 -
str.split(separator)
: 使用指定的分隔符将字符串分割成子串,并返回一个列表。 -
str.find(substring)
: 在字符串中查找子串 substring,返回第一次出现的位置索引。 -
str.startswith(prefix)
: 检查字符串是否以指定的前缀 prefix 开头,返回 True 或 False。 -
str.endswith(suffix)
: 检查字符串是否以指定的后缀 suffix 结尾,返回 True 或 False。 -
str.isnumeric()
: 检查字符串是否只包含数字字符。
3、元组类型
在 Python 中,元组(tuple)是一种不可变的数据类型,类似于列表,但元组中的元素不能被修改。元组使用圆括号 ()
来表示,可以包含任意数量的元素,甚至可以包含不同类型的元素。
1)创建元组
# 创建一个空元组
empty_tuple = ()
# 创建一个包含元素的元组
my_tuple = (1, 2, 3, 'a', 'b')
2)访问元组元素
# 使用索引访问元组元素
print(my_tuple[0]) # 输出 1
print(my_tuple[3]) # 输出 'a'
3)元组切片
# 切片操作
print(my_tuple[1:3]) # 输出 (2, 3)
4)不可变性
# 尝试修改元组中的元素会导致错误
my_tuple[0] = 100 # 会引发 TypeError: 'tuple' object does not support item assignment
5)元组拆分
# 元组拆包
a, b, c = my_tuple
print(a) # 输出 1
print(b) # 输出 2
print(c) # 输出 3
6)元组方法
# 元组支持一些方法,如 count 和 index
my_tuple = (1, 2, 2, 3, 3, 3)
print(my_tuple.count(2)) # 输出 2,计算元素 2 在元组中出现的次数
print(my_tuple.index(3)) # 输出 3,返回元素 3 第一次出现的索引
4、列表类型
在 Python 中,列表(list)是一种有序、可变的数据类型,用于存储多个元素。列表使用方括号 []
来表示,可以包含任意数量的元素,甚至可以包含不同类型的元素。
1)列表的定义、使用、切片、列表元素的增、删、改、查
'''
列表类型: list 用[]标识,列表元素可以是任意的类型l1 = [] 定义一个空列表
'''#列表的定义
l1 = [1, 2.1, "qeqw", {1:23, "name":"盲僧"}] #定义一个非空列表l1
print(type(l1),l1)#列表元素的访问: [索引],索引有正向和逆向索引
print("l1[0]:",l1[0], "l1[2]:",l1[2], "l1[-1]:",l1[-1])
#列表元素的索引切片 [start: stop: step) 左闭右开
print(l1[1: -1])#列表元素的修改: [index] = newValue
l1[0] = "hello"
print(l1[0])
l1[-1][1] = "血量"
print(l1[-1])l2 = [1,3,l1,"as",2.24] #列表里面引用列表
print(l2)#列表元素新增 append(value)默认在末尾添加
l3 = []
l3.append(12)
l3.append("weqwe")
l3.append([122,23,2.12,"nak"])
print(l3)#添加连续的整数
l4 = []
#range(n) 产生0~(n-1)的数列
#range(start, stop) 产生[start, stop)之间的数列
#range(start, stop, step) 产生[start, stop)之间步长为step的数列
for i in range(1, 11): #for 变量 in 单词表、列表、字符串等l4.append(i)print(l4)#列表元素的删除
# list.pop(index) 根据元素位置删除 默认最后一个元素
l4.pop(-1) #删除l4列表末尾的元素 10
print(l4)
# list.remove(value) 删除l4中的指定值 根据具体元素值进行删除
l4.remove(8) #指定删除元素 8
print(l4)#列表元素的插入
#insert(index, value) 在列表指定位置 index 插入元素 value
l4.insert(7,"亚索")
print(l4)# reverse() 列表元素的反向
l4.reverse()
print(l4)
输出结果
2)匿名函数,列表推导式
"""
匿名函数:lambda表达式
语法规则:lambda arg1, arg2: expression注意:1,arg1,arg2:表示原函数的形参列表2,expression:表示原函数返回值的表达式3, 整个lambda执行的结果 就是expression的结果"""def Add(x, y):return x+yprint(Add(23, 42))
#lambda表达式的应用 (lambda x, y: x+y)(a, b)
print((lambda x, y: x+y)(12, 3))print((lambda x : x**2)(3)) #求平方pingfang = (lambda x : x**2)
print(pingfang(5))'''列表推导式
'''
#定义列表:列表元素为 i, i满足for循环中的 i取值
l1 = [i for i in range(1, 15, 3)]
print(l1)l1 = [i for i in range(0, 101, 2)] #取100 以内的所有偶数到列表l1
print(l1)
l1 = [i for i in range(101) if i % 2 == 0] #取100 以内的所有偶数到列表l1
print(l1)def sq(x):return x**2print(map(sq, [i for i in range(10)]))
a = map(sq, [i for i in range(10)])
print(a, list(a)) #list(a)将a强转为列表b = map(lambda x : x**2, [i for i in range(10)])
print(b, list(b)) #list(b)将b强转为列表
输出结果
5、字典类型(Dictionary)
字典dict:用{}标识,字典每个元素都是key,value,
key为不可变,value可变
字典的增删改查
字典元素的修改: dict[key] = newvalue
字典元素的增加: dict[newkey] = value
字典元素的删除: dict.pop(key)
字典元素的访问 dict[key] dict.get[key]
#先定义再赋值
d1 = {} #定义空字典
d1[0] = "hello"
d1[1] = "world"
d1[2] = 21
d1[3] = 3.12
print(d1)
print(d1[1], d1.get(2))#字典元素的访问d2 = {0:32, 1:2.112, 2:"hello", "name":"瑟提", 2.5:"wqeq"} #定义时直接赋值
print(d2)
print(d2["name"], d2[2.5])
d2[1] = 3.333 #内容更新
d2["iq"] = "低智商" #新元素的添加
print(d2)
d2.pop(0) #删除字典元素 0:32
print(d2)
结果