Python基础操作,易忘点,难点记录表格

本文介绍了Python中的基本输出方法,包括print的多种用法。接着详细讨论了列表的操作,如创建、定位、添加、删除和排序。接着转向字典,讲解了创建、访问、排序和各种方法。集合的操作也进行了阐述,包括添加、删除和集合运算。此外,还提到了字符串的join方法、指数表示以及math库的一些常用函数。最后,简要介绍了datetime模块用于日期和时间的操作。
摘要由CSDN通过智能技术生成
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**ypow()
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()))

mapmap(操作,值)map(lambda x,y:x+y)

itertools库

(21条消息) python itertools模块详解_不会写代码的嘤嘤的博客-CSDN博客

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

max(str)

返回字符串 str 中最大的字母。

string.index(str, beg=0, end=len(string))跟find()方法一样,只不过如果str不在 string中会报一个异常.

min(str)

返回字符串 str 中最小的字母。

string.lower()

string.upper()

转换 string 中所有大写字符为小写.

转换 string 中的小写字母为大写

string.zfill(width)

返回长度为 width 的字符串,原字符串 string 右对齐,前面填充0

string.split(str="", num=string.count(str))以 str 为分隔符切片 string,如果 num 有指定值,则仅分隔 num+1 个子字符串

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值