Python
数据类型
1,Number(数字):int, long(python3开始就没有了), float(浮点型), complex(复数)
2,布尔型boolean(true/false)
3,String字符串类型
4,List列表
5,Tuple(元组)
6,Dictionary(字典)
基本语法
变量名 = 具体值
例:
# 字符串
str = '这是一个字符串';
# Number
math = 500;
# 布尔
blo = true;
# List
list = ['娃哈哈', '乳娃娃', 600, 500.25];
# Tuple
tuple = (18,16,5.1,'酸酸乳')
# Dictionary
dictionary = {"name":"小明", "age":16, "余额":58.9}
查看变量的数据类型
a = "小花"
type(a)
类型转换
函数 | 说明 |
---|---|
int(x) | 将x转换为一个整数 |
float(x) | 将x转换为一个浮点数 |
str(x) | 将对象x转换为字符串 |
bool(x) | 将对象x转换为布尔值(如果对非0的整数和浮点数进行布尔类型的转换那么结果为true;字符串中凡是isNotempty的都是true) |
运算符
1,算数运算符
运算符 | 描述 | 实例 |
---|---|---|
+ | 加 | 两数相加;a + b |
- | 减 | 两数相减;a - b |
* | 乘 | 两数相乘;a * b |
/ | 除 | 两数相除;a / b |
// | 取整除 | 返回商的整数部分9//2 输出结果为4 |
% | 取余 | 9%2 输出结果为1 |
** | 指数 | a**b表示为a的b次方 |
() | 小括号 | 优先计算小括号中的内容 |
默认优先级:**最高, + - 最低,其余居中
2,赋值运算符 =
# 单个赋值
a = 12
print(a)
# 多个赋同值
a = b = c = 20
print(a == b == c)
# 多个赋不同值
a, b, c = 10, 20 ,30
print(a)
print(b)
3,复合赋值运算符(同Java)
算式 | 说明 |
---|---|
a += 2 | 等同于a = a + 2 |
a -= 2 | 等同于a = a - 2 |
a *= 2 | 等同于a = a * 2 |
a /= 2 | 等同于a = a / 2 |
a //= 2 | 等同于 a = a // 2 |
a %= 2 | 等同于 a = a % 2 |
a **= 2 | 等同于 a = a ** 2 |
4,比较运算符(同java)
运算符 | 描述 |
---|---|
== | 等于;比较两个对象是否相等 |
!= | 不等于,比较两个对象是否不相等 |
> | 大于 |
>= | 大于等于 |
< | 小于 |
<= | 小于等于 |
5,逻辑运算符
运算符 | 表达式 | 描述 |
---|---|---|
and | x and y | 只要有一个为flase,结果为false;只有两个或更多同时为true,结果才为true |
or | x or y | 只要有一个为true,结果就为true;只有两个或更多同时为false,结果才为false |
not | not x | 取反,如果x为true,则返回false;如果x为false,则返回true |
逻辑运算符的优化执行
6,输入输出
输出print()
输入input()
7,流程控制语句
7.1 if判断
# 语法
if 判断条件:
条件成立需要做的事
# 例子
age = 20
if age > 10:
print("可以去买棒棒糖了")
7.2 if else
# 单个赋值
a = 12
print(a)
# 多个赋同值
a = b = c = 20
print(a == b == c)
# 多个赋不同值
a, b, c = 10, 20 ,30
print(a)
print(b)
7.3 elif
# 语法
if 判断1:
do1
elif 判断2:
do2
elif 判断3:
do3
# 例子
age = 25
if age > 18:
print("可以去网吧消费了")
elif age > 24:
print("可以成家立业了")
elif age > 35:
print("啥也别想,搬砖吧")
7.4 for
# 循环的语法
for 临时变量 in 列表或者字符串等可迭代对象:
循环满足时的执行语句
# 例子
for s in "hello":
print(s)
# range(5) 表示一个左闭右开区间代表0~4
# range(1, 5) 也表示一个左闭右开区间代表1-4
# range(1, 10, 3)表示为range(起始值, 结束值, 步长), 同样遵循左闭右开
数据类型方法篇
字符串常见操作
方法 | 使用 | 描述 |
---|---|---|
获取字符串长度 | len(str) | 获取指定字符串长度 |
查找内容 | str.find(s) | 查找指定内容s在str中是否存在,存在则返回该内容在字符串中出现的开始位置的索引值,不存在则返回-1 |
判断是否已xx开头或者结尾 | str.startswith(x) str.endswith(x) | 判断是否已xx开头或者结尾,返回布尔值 |
计算出现的次数 | str.count(x, start, end) | 返回str在start到end中出现的次数,也可以直接使用str.count(x) |
替换内容 | str.replace(old, new, count) | 指定用new去替换old,如果存在很多匹配,使用count代表替换次数不会超过count次 |
切割字符串 | str.split(s, count) | 根据指定s去分割字符串,如果指定了count表示最多分割多少次 |
修改大小写 | str.upper()和str.lower() | 将字符串中的字母进行大写转换或者小写转换 |
空格处理 | str.strip() | 去除空格 |
字符串拼接 | str.join(s) | 根据字符循环拼接 |
列表操作
添加元素
-
append 在末尾添加元素
-
insert 在指定位置插入元素
-
extend 合并两个列表
append
insert
extend
修改元素
直接通过下表赋值的方式进行替换元素
查询元素in和not in
in
not in
删除元素
-
del:根据下标进行删除
-
pop:删除最后一个元素
-
remove: 根据元素的值进行删除
del
pop
remove
元组的操作
在Python中元组与列表类似,不同之处在于元组的元素不能修改,定义只有一个元素的元组时需要再后面跟上逗号
元组可以跟列表一样直接通过下标进行访问
切片操作
切片指的是对操作对象进行部分截取的操作。字符串,列表,元组都支持切片操作。
str = '年年花开皆相似,岁岁年年人不同.'
# 截取打印单个字符
print("单个字符:" + str[5])
# 截取字符串的一个区间 遵循左闭右开
print("左闭右开区间: " + str[0:5])
# 截取从指定位置开始的所有字符
print("从指定位置开始的所有: " + str[2:])
# 截取到目标为止的所有字符
print("截取到目标为止的所有: " + str[:5])
# 根据指定步长截取
print("步长截取: " + str[0:7:2])
字典高级
查看元素
除了可以跟数组一样根据将key作为下标直接获取对应的value之外,还可以使用get进行获取
info = {"name": "张三", "外号":"法外狂徒", "身高": "189"}
# 基本获取
print(info["外号"])
# print(info["爱好"]) # 获取不存在的key会报异常
# 通过get来获取对应的value
print(info.get("name"))
# 如果不存在可以指定返回默认值
print(info.get("爱好", "审判"))
修改与新增元素
info = {"name": "张三", "外号":"法外狂徒", "身高": "189"}
# 当这个指定的key在字段中不存在时,就是新增,存在就是修改
info["key"] = "val"
print(info)
info["key"] = "wahaha"
print(info)
字典的删除
# 指定删除key
del info["name"]
print("指定删除key:" + str(info))
# 清空字典,但是保留了字典对象
info.clear()
print("清空了字典:" + str(info))
# 删除整个字典
del info
字典的遍历
info = {"name": "张三", "外号":"法外狂徒", "身高": "189"}
# 变量字典的key, 字典.keys()表示获取字典中所有的key
for key in info.keys():
print(key)
# 遍历字典的value, 字典.values()表示获取字典中所有的key
for val in info.values():
print(val)
# 遍历字典的key和value
for key,val in info.items():
print(key + val)
# 遍历字典的项
for key in info.items():
print(key)