python输出 | 关于python的输出,经常会忘记,因为尝试用的是 print(x)这样的输出,其实还有其他方式。 | 1)x= 2,print("x=%d"%x,end=‘\n’) 2)x=2,print('x={},x={}'.format(x,x)) 3)print(f"my_set的内容是:{my_set},my_set的数据类型是:{type(my_set)}.") |
列表操作 | 1)创建列表 X = [0] + [5]*10 列表定位操作: x.index(3) 输出index为3的元素 x.count(0)统计为0的个数 | 2)添加元素 在列表末尾添加元素 list.append(6) 添加另一个列表,extend()。 在指定位置插入 list.insert(1,1) |
3)删除元素 del: del del[index] pop(): list.pop(index) 前面两个是根据索引删除 remove是删除列表中的第一个值 例如下面是删除第一个 3 remove: list.remove(3) | 4)列表排序 reverse():list.reverse() sort() : list.sort() 可选参数:reverse=True ,默认升序 sorted(): sorted(list),可选参数,reverse=True。 sort对原表修改,sorted产生新列表。 | |
字典操作 | 1)创建字典 dict1={'Tom':93,'Jim':80,'Lily':100} 2)访问字典 dict1['Tom'] dict1.get('Tom') 3)keys()方法 dict1.keys() 不支持索引,需要转换成list 4)values()方法 可以用for索引 重点:字典排序方法: sorted(dict1.items(),key= lambda x:x[1]) # 按照字典的值进行排序 a1 = sorted(a.items(), key=lambda x: x[1]) # 按照字典的键进行排序 a2 = sorted(a.items(), key=lambda x: x[0]) | 5)items()方法 dict1.items() dict_items([('Tom', 93), ('Jim', 80), ('Lily', 100)]) for读取 (6)pop(key)方法 popitem() (7)copy() dict2 = dict1.copy() (8) 创建字典 dict(zip(key,values)) |
集合操作 (21条消息) 【python】集合set详解(超详细)_python set索引_devil_son1234的博客-CSDN博客 | 1)定义集合 my_set = {1,2,3,4,5,5,100,1} my_empty_set = set() 2)添加新元素 my_set.add('new') 3)移除集合元素 my_set.remove('remove') 4)随便取出一个元素 element = my _set.pop() | 5)取差集 set1 = {1,2,3} set2 = {1,4,6} # 取出集合1和集合1的差集,即取出集合1中有但集合2中没有的的元素 set3 = set1.difference(set2) 6)集合合并 set1 = {1,2,3} set2 = {1,2,4,6} # 合并集合1和集合2,并对里面的元素做去重处理 set3 = set1.union(set2) 其他的可以参考: -,|,&,^等操作 |
join()方法 | join():连接字符串数组。将字符串、元组、列表中的元素以指定的字符(分隔符)连接生成一个新的字符串。 语法: ‘sep’.join(seq) 以sep作为分隔符,将seq所有的元素合并成一个新的字符串 | s = "WHERETHEREISAWILLTHEREISAWAY" print("".join(sorted(s))) 将s从小到大排列后输出 |
指数写法 | x**y | pow() |
math库 | math.ceil() 向上取整 math.floor()向下取整 | math.pi math.inf math.e math.nan |
(21条消息) 【math库】-CSDN博客 | math.factorial(x) n的阶层 math.gcd(a,b) 公约数 | math.pow(x,y) math.exp(x) math.sqrt(x) math.log(x,base) |
input输入 | 1)x = input() 2) x = int(input()) | 3)a,b,c=map(int,input("请输入多个值:").split()) 4) list = list(map(int,input('请输入多个值:').split())) |
map | map(操作,值) | map(lambda x,y:x+y) |
itertools库 | itertools,是python的一个内置模块,功能强大,主要用于高效循环创建迭代器。注意一点,他返回的不是list,而是iterator | |
1)count() | count(start, [step])会创建一个无限迭代器,从当前数字无限循环下去,停止可以按Ctrl+c键 | |
2)cycle() | cycle( p)会把传入的序列无限的循环打印 | |
3)repeat() | repeat(elem [,n])可以把一个元素无限循环 | |
4)chain() | chain(p,q…)可以把一组迭代对象串联起来,形成一个更大的迭代器 | |
5)product() | product(p,q,…[repeat=1])得到的是可迭代的笛卡尔积,多个可迭代对象的笛卡尔积可以通过for循环来实现,((i,j) for i in a for j in b) | |
6)permutations() | permutations(p[, r])返回的是一个长度为 r 的所有可能排列,无重复元素,第二个参数默认为迭代序列长度 | |
7)combinations() | combinations(p, r)返回的是一个长度为r的组合,它是有序的,无重复元素 | |
8)combinations_with_replacement()combinations_with_replacement(p, r)返回的是一个长度为r的组合,它是有序的,元素可以重复 | ||
lambda | 隐函数 | lambda x,y :x+y 等价于 函数 x+y |
copy库 | import copy #copy.deepcopy(x) | 函数深复制,复制后函数不变 |
datetime库 | from datetime import datetime,timedelta | |
datetime.datetime(year="",month="",day="") #整型转换成日期格式,方便计算 | ||
datetime.timedelta(days="") #返回参数对应的时间间隔,进行时间加减 | ||
datetime.year #日期格式中的年转换成整型,方便计算 | ||
datetime.month #日期格式中的月转换成整型,方便计算 datetime.day | ||
ini_time_str = '2020/8/3 23:00:51' end_time_str = '2020/9/1 7:48:50' ini_time = datetime.strptime(ini_time_str, '%Y/%m/%d %H:%M:%S') end_time = datetime.strptime(end_time_str, '%Y/%m/%d %H:%M:%S') print((end_time-ini_time).days) | ||
from datetime import datetime,timedelta #日期初始化 start=datetime(2001,1,1) end=datetime(2021,12,31) delta=timedelta(1) #分解整数模板 def abc(x): ans=0 while x: ans+=x%10 x//=10 return ans #循环遍历 cnt=0 while start<=end: year=abc(start.year)+abc(start.month)+abc(start.day) if year in [2,4,9,16,25,36,49,64,81,100]: cnt+=1 start+=delta print(cnt)#输出结果:977 | from datetime import datetime,timedelta 1)datetime.strptime() 和datetime.strftime()的区别 x, '%Y/%m/%d %H:%M:%S' 参数 对于: ”2020/8/3 23:00:51“ 使用 strptime 对于: datetime(2020,5,11,3,3,2) 使用 strftime 2)timedelta 时间差值 delta=timedelta(1) start=datetime(2001,1,1) start += delta start.year /month/day/
| |
string方法 | string.capitalize() | 把字符串的第一个字符大写 |
Python 字符串 | 菜鸟教程 (runoob.com) | string.count(str, beg=0, end=len(string)) | 返回 str 在 string 里面出现的次数,如果 beg 或者 end 指定则返回指定范围内 str 出现的次数 |
string.find(str, beg=0, end=len(string)) | 检测 str 是否包含在 string 中,如果 beg 和 end 指定范围,则检查是否包含在指定范围内,如果是返回开始的索引值,否则返回-1 | |
返回字符串 str 中最大的字母。 | string.index(str, beg=0, end=len(string)) | 跟find()方法一样,只不过如果str不在 string中会报一个异常. |
返回字符串 str 中最小的字母。 | 转换 string 中所有大写字符为小写. 转换 string 中的小写字母为大写 | |
返回长度为 width 的字符串,原字符串 string 右对齐,前面填充0 | string.split(str="", num=string.count(str)) | 以 str 为分隔符切片 string,如果 num 有指定值,则仅分隔 num+1 个子字符串 |
Python基础操作,易忘点,难点记录表格
最新推荐文章于 2024-08-03 19:27:22 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)