例:name="张三" age=18 gender="男" hight=178.5
#print()一次输出一个结果
print(name)
#print()一次输出多个结果
print(name,age,gender,hight)
占位符: %s(字符串) %d(数字) %f(浮点数) %%(代表一个%)
#print()格式化输出一个结果,%代表连接符
print("名字 = %s" % name)
#print()格式化输出多个结果
print("名字 = %s , 年龄 = %d , 性别 = %s , 身高 = %f" % (name,age,gender,hight))
1、算术运算符
运算符 | 描述 | 实例 |
+ | 加 | 1+1=2 |
- | 减 | 1-1=0 |
* | 乘 | 1*2=2 |
/ | 除 | 5/2=2.5,2/5=0.4 |
// | 求商、整除 | 5//2=2,2//5=0 |
% | 求余 | 5%2=1,2%5=2 |
** | 幂 | 2**3=8(2的3次方) |
Python中的算术运算符中的 * 可以用于字符串计算
例:print("中"*5) 输出:中中中中中
2、比较运算符
运算符 | 描述 | 实例 |
== |
检查运算操作数的值是否相等,如果是表示成立,返回 True
|
print(1==1) 返回True |
!= |
检查运算操作数的值是否不相等,如果是表示成立,返回 True
|
print(1!=1) 返回False |
> |
检查左侧操作数的值是否大于右侧,如果是表示成立,返回 True
|
print(1>1) 返回False |
< |
检查左侧操作数的值是否小于右侧,如果是表示成立,返回 True
|
print(1<1) 返回False |
>= |
检查左侧操作数的值是否 大于或等于右侧,如果是,表示条件成
立,返回 True
|
print(1>=1) 返回True |
<= |
检查左侧操作数的值是否 小于或等于右侧, 如果是,表示条件成
立,返回 True
|
print(1<=1) 返回True |
3、逻辑运算符
运算符 | 描述 | 实例 |
and |
只有 a b 二者都为 True ,才会返回 True
|
print(True and Ture) 返回True |
or |
只要 a b 有一个为 True ,则会返回 True
|
print(True or True) 返回True |
not |
取反操作,如果 True , not 之后为 Fasle
|
print(not True) 返回False |
4、赋值运算符
运算符 | 描述 | 实例 |
= |
基础赋值运算
|
a=10 |
+= |
包含加法规则的赋值运算
|
a+=10,等价于a=a+10 |
-= |
包含减法规则的赋值运算
|
a-=10,等价于a=a-10 |
*= |
包含乘法规则的赋值运算
|
a*=10,等价于a=a*10 |
/= |
包含除法规则的赋值运算
|
a/=10,等价于a=a/10 |
//= |
包含求商规则的赋值运算
|
a//=10,等价于a=a//10 |
%= |
包含求余规则的赋值运算
|
a%=10,等价于a=a%10 |
**= |
包含求幂规则的赋值运算
|
a**=10,等价于a=a**10 |
5、运算符优先级
优先级(从左到右,由高到低) | ||||||
** | * / // % | + - | <= >= < > | == != | = %= += -= *= /= //= | and or not |
1、常见的数据类型分类
(1)数字型
(2)非数字型
可以通过 type() 函数可以返回当前变量或数据所属类型
2、字符串
(1)字符串定义
# 1 单引号
val1 = '我好厉害'
# 2 双引号
val2 = "我好威猛"
# 3 三引号【也可以单双】
val3 = """我好牛逼"""
# 4 转义字符串的特殊符号, \ 代表转义字符,将后面的一个符号当做内容
val4 = "I\'m student"
# 5 去除特殊字符功能(常用在正则表达式),里面有什么就是什么
val5 = r"I \' m student"
(2)字符串的输入和输出
(3)字符串相关函数(字符串不允许修改)
例:str="my name is student"
# 根据字符串中的数据获取索引值
str.index('name') #返回name的起始位置
str.index('name',start,end) #从指定范围查找name的索引位置,范围可省略
str.find('name') #返回name的起始位置
str.find('name',start,end) #从指定范围查找name的索引位置,范围可省略
# 统计字符串的长度
len(str)
# 统计大字符串中某个小字符串出现的次数
str.count('str') #返回str出现的次数
# 检查字符串是否以某个字符串开始,是则返回 True
str.startswith('str') #检查是否以str开头
# 检查字符串是否以某个字符串结束,是则返回 True
str.endswith('str') #检查是否以str结束
# 字符串的替换,不改变原字符串
str.replace(old_str,new_str,num) #把旧字符串替换num次新字符串,num省略默认全部替换
# 字符串的大小写转化,不改变原字符串
str.upper() #将字符串全部转换成大写
str.lower() #将字符串全部转化成小写
# 字符串的拆分,返回列表
str.split(' ',num) #字符串以空格作为分隔符进行切割,可以指定切num次,省略默认全切
str.split() #字符串默认以转义字符作为分隔符进行切割
# 字符串的拼接
string.join(seq) #以srting作为分隔符,将seq中的所有元素合并为一个新的字符串
常用:字符串加法拼接 +
find和index的区别:find找不到返回-1;index找不到报错,影响后面语句执行
(4)字符串切片
语法:字符串[开始位置下标:结束位置下标:步长]
作用:获取字符串中指定部分的字符
name = "abcdefg"
print(name[2:5:1]) # cde
print(name[2:5]) # cde
print(name[:5]) # abcde
print(name[1:]) # bcdefg
print(name[:]) # abcdefg
print(name[::2]) # aceg
print(name[:-1]) # abcdef, 负1表⽰倒数第⼀个数据
print(name[-4:-1]) # def
print(name[::-1]) # gfedcba
注意:
3、列表
(1)定义
# 通过字面量化方法定义
list = [val1,val2,val3,.....]
# 通过类实例化方法定义
list = list()
# 列表推导式
list = [x for x in range(n) if 判断条件] # if 可以省略
(2)列表相关函数
# 列表的增加操作,在指定位置插入数据
列表.insert(索引,数据) # 数据可以是单个数据也可以是数据集合
# 列表的增加操作,在末尾追加数据
列表.append(数据) # 数据可以是单个数据也可以是数据集合
# 列表的合并操作,将列表2的数据追加到列表1
列表1.extend(列表2) # 列表2不作为一个整体添加
列表1 += 列表2 # += 方法等价于extend()
# 列表的删除操作
del 列表[索引] # 删除指定索引的数据
列表.remove(数据) # 删除第一个出现的指定数据(常用)
列表.pop() # 删除末尾数据(返回删除的数据)
列表.pop(索引) # 删除指定索引的数据(返回删除的数据)
列表.clear() # 清空列表
# 列表的修改操作
列表[索引] = 数据 # 修改指定索引的数据
# 列表的查询操作
列表名[索引] # 通过索引查询数据
# 通过数据获取索引
列表名.index(数据) # 获取数据在列表中第一次出现的索引值
# 统计列表长度
len(列表) # 列表中元素的个数
# 数据在列表出现的次数
列表.count(数据)
# 列表排序
列表.sort() # 升序排序
列表.sort(reverse=True) # 降序排序
列表.reverse() # 逆序,反转
# 列表拷贝
列表.copy() # 与原列表不是一个列表
4、元组
(1)定义
# 1 字⾯量
tuple_1 = (1, 2)
# 2 实例化
tuple_2 = tuple()
# 3 只有⼀个值的元组
tuple_3 = (1, )
注:如果元组中只有一个数据,要求后面也要加逗号, 否则影响数据类型
(2)元组相关函数
# 通过索引访问数据
元组名[索引值/下标]
# 修改元组中的数据,是受到限制
# 元组中有列表或者字典,可以修改,其余的不能修改
# 通过数据获取索引
元组名.index(数据)
# 统计元组中某个数据出现的次数
元组名.count(数据)
# 统计元组的长度
len(元组名)
5、字典
(1)定义
(2)字典相关函数
# 字典查询数据
字典名[键名] # 键名不存在会报错
字典名.get(键名) # 键名不存在不会报错,返回None
# 字典增加/修改操作
字典名[键名] = 新值 # 键名存在则修改,不存在则新建
字典名.setdefault(key,value) # 键名存在不修改对应值,使用默认值;不存在则新建键值对
字典1.update(字典2) # 把字典2合并到字典1,key存在则更新对应的value值,不存在则新建
# 字典的删除操作
del 字典名[key] # key存在正常删除,不存在则报错
字典名.pop(key) # key存在正常删除,不存在则报错
字典名.clear() # 清空字典
# 统计字典的键值对个数
len(字典名)
# 字典返回所有键名key
字典名.keys() # 返回列表
# 字典返回所有键值value
字典名.values() # 返回列表
# 将字典中所有键值对都处理成元组
字典名.items() # 存放在列表
(3)注意