不熟悉知识点
知识点一:
1.进制
二进制表示方式:0b111
八进制表示方式:0o111
二进制表示方式:0x111
进制转换函数
bin(除二进制外其他数据) -> 二进制数
cot(除二进制外其他数据) -> 二进制数
hex(除二进制外其他数据) -> 二进制数
测试用例
bin(0xa15)
cot(0xa15)
hex(100)
2.python中支持科学计数法
1200 == 1.2e3
0.001 == 1e-3
3.for循环
3.1 字符串序列
for a in 'python':
print(a)
3.2 列表序列(有序就可以按照索引遍历)
list_num = ['1', '2', '3', '4', '5', '6']
# 元素遍历
for item in list_num:
print item
# 下标遍历
for index in range(len(list_num)):
print list_num [index]
3.3 元组序列
tuple_1 = 10, 23, 89, '小明'
tuple_2 = ('周一', '周二', '周三', '周四', '周五')
for item in tuple_1:
print item
for index in range(len(tuple_2 ))
print tuple_2 [index]
3.4 字典序列
dog = {'name': '旺财', 'color': '黄色', 'age': 3, 'type': '土狗'}
# 关键字遍历
for key in dog:
print(key, dog[key])
#间接遍历
for value in dog.values():
print(value)
#字典元素遍历,一个元素就是一对键值
print(dog.items())
for key, value in dog.items():
print(key, value)
3.5 迭代器和生成器
# 迭代器
iter_1 = iter[24, 23, 31, [14, 15]]
for x in iter_1 :
print('x:', x)
# 生成器
for x in range(99):
yield str(x).rjust(3, '0')
4.range 函数
range(M, N, step) - 产生数字范围M ~ N-1, 每次增加step (注意:step是正整数N>M;step是负整数N continue是循环体中的关键字,用来结束当次循环 格式占位符: 2.删除 列表.pop() - 取出列表中最后一个元素 3.in/ not in 4.常用方法 列表.reverse() -- 反向列表(直接修改原列表) 列表.sort() -- 将列表中的元素升序排序(从小到大) 列表.clear() -- 删除列表中所有的元素(清空列表) 列表.copy() -- 相当于列表[:], 将列表中的元素拷贝一份产生一个新的列表(浅拷贝) 1.增加 == : 判断两个变量地址对应的值是否相等 1.关键字参数: 以'形参名1=值1, 形参名2=值2...'格式来确定实参 3.python中类型只有说明的作用,没有约束的作用 4.不定长参数 - 形参的参数不确定 5.匿名函数 注意: 变量作用域 open(file, mode='r',encoding=None) - 以指定的方式打开文件,并且返回文件对象 with open() as 文件对象: 1)json格式要求: a.一个json中有且只有一个数据 b.这个必须是json支持的数据类型的数据5.continue/break/return
break是循环体中的关键字,用来结束整个循环
return是循环体中的关键字,用来结束整个循环,并提供一个返回值6.print的定制
# sep表示多个数据直接的间隔,end为结束时的效果
print(10, 20, sep='+++++', end=' ')
7.转义字符
# \n - 换行(相当于回车)
# \' - 单引号字符(不是字符串开头/结尾标志)
# \" - 双引号本身(不是字符串开头/结尾标志)
# \\ - 反斜杠本身(让一个反斜杠失去转义的功能)
# \t - 制表符(相当于tab)
# 阻止转义: 在字符串的最前面加r/R,能够阻止字符串中所有的转义字符转义
print('=============================')
str4 = R'\thow\nare\nyou\"'
print(str4)
8.字符编码
# chr函数: chr(编码值) - 获取编码值对应的字符
# ord函数: ord(字符) - 获取指定字符对应的编码
print(chr(100), chr(0x5e00))
print(ord('余'), ord('婷'))
9.有序列表的查询
语法: 字符串[开始下标:结束下标:步长]10.字符串操作
3.格式字符串: 在字符串中用格式占位符代替字符串中变化的部分,然后再使用数据对变化的部分进行赋值
%s - 字符串
%d - 整数
%.Nf - 浮点数(N控制小数后小数的位数)
%c - 字符、字符对应的编码值
->调用这些方法生成的是一个新的字符串,原字符串不变
字符串.center(width, fillchar) - 让字符串在新字符串中居中,width控制新子串的宽度,fillchar是填充字符
字符串.rjust(width, fillchar)
字符串.ljust(width, fillchar)
字符串.zfill(width) <==> 字符串.rjust(width, '0')11.列表操作
列表.append(元素) - 在列表的最后添加一个元素(修改原列表,不会产生新的列表)
列表.insert(下标, 元素) - 在列表中指定下标前添加指定元素
del 列表[下标] - 删除列表中指定下标对应的元素
列表.remove(元素) - 删除列表中指定的元素注意: 1.如果需要删除的元素在列表中有多个,只删最前面的一个
2.如果要删除的元素不存在,程序会报错!
列表.pop(下标) - 取出列表中指定下标对应的元素
元素 in 列表 -> 判断列表中是否包含指定的元素
列表.count(元素) -- 统计列表中指定元素的个数,返回一个整数
列表.extend(序列) -- 将序列中的元素全部添加到列表中
列表.index(元素) -- 获取指定元素对应的下标(如果元素有多个只取第一个)
列表.reversed(序列) -- 反向序列,不修改原序列而是产生新的序列(迭代器)
列表.sort(reverse=True) -- 将列表中的元素降序排序(从大到小)
sorted(序列) -- 排序的时候不修改原序列,产生新的序列12.字典操作
字典[key] = value - 如果key存在, 修改key对应的值; 如果key不存在,添加键值对
del 字典[key] - 删除字典中指定key对应的键值对。如果key不存在会报错
字典.pop(key) - 取出字典中key对应的值。如果key不存在会报错
key in 字典 - 判断字典中是否存在指定的key
字典.clear() - 清空字典
字典.copy() - 拷贝字典中的键值对产生一个新的字典
dict.fromkeys(序列, 值) - 创建一个新的字典,字典的key是序列的元素, key对应的value是值
字典.setdefault(key, value) - 添加键值对(不能修改)
字典1.update(字典2) - 使用字典2中的键值对去更新字典1(不存在添加、存在修改)13.集合
集合.add(元素) - 往集合中添加一个元素
集合.update(序列) - 将序列中的元素添加到集合中(自带去重)
2.删除
集合.remove(元素) - 删除集合中指定的元素。(元素不存在会报错!)数学集合运算
is : 判断两个变量存储的地址是否相等14.函数
2.注意: 如果既有位置参数又有关键字参数,位置参数必须写在关键字参数前面
注意: 不带的参数要放在带参数的前面
1)语法
lambda 参数列表:返回值
2)说明
lambda - 关键字
参数列表 - 相当于普通函数的形参列表, 变量1,变量2,...
: - 固定写法
返回值 - 相当于普通函数函数体中的return语句。可以是除了赋值语句以外的任何语句
1.匿名函数本质还是函数,之前函数中将的语法绝大多数都适用(通过类型名对参数类型说明不支持的)
2.匿名函数能做的事情,普通函数都可以做。只是匿名函数简洁
1)全局变量: 没有声明在函数中的变量都是全局变量, 全局变量的作用域是从变量声明开始到整个py文件结束
2)局部变量: 声明在函数中的变量都是局部变量, 作用域是从变量声明到函数结束
3)global - 在函数声明一个全局变量(只能在函数中使用)15.迭代器生成器
16.文件操作
文件对象.read() - 返回文件中的内容(从读写位置获取到文件结尾)
文件对象.readline() - 读一行内容(从读写位置开始到一行结尾)
文件对象.write(内容) - 将内容写入指定文件
文件的操作
2)json.loads(字符串, encoding=编码方式) - 将字符串转换成python对应的数据
3)json.dumps(数据) - 将python数据转换成json格式的字符串