当前位置: 首页 > news >正文

蓝桥杯算法之基础知识(2)——Python赛道

1.循环里面套用递归,当递归执行return时,只会退出当前递归层

2.不能一边遍历list 一边pop

解决办法:倒序遍历解决或者创建新的列表去存储

3.sqrt求出来的始终是小数形式,注意题目要求的结果有可能是整型

你直接sqrt就提交,那不直接相当于没做了,填空题很容易丢分。

4.python的递归是有深度限制的,默认是1000

你在尝试递归的时候可以试着试验范围内的大数,如果报深度超了 就自己设置深度sys.setrecursionlimit()

5.列表的两种格式

6.set集合在迭代的时候不能一边遍历一边赋值

-解决方法要不就是新加一个变量去代替要不就是将set变为list(set())

7.sys加快输入(这个很有用,一般对于那些限制短时间完成的,你使用这个前缀一般是比普通的数据读入快的)

在每次代码之前加入

import sys

input=sys.stdin.readline

》特殊情况

对于输入的数字。int() 和 split() 会忽略换行符,所以数字输入通常不用手动处理。

对于输入的字符串,sys.stdin.readline 返回的字符串末尾带换行符(\n),而 input() 会自动去掉。所以需要专门处理

8.二维矩阵赋值

a=[[for _ in range(n)] for _ in range(m)]-----由a=[0 for _ in range(m)]--->[0,0,0,0,0]推广而来

---[[xx],[xx],[xx]]

a=[[0]*N for i in range(0,N)]
#s=[[0]*N for i in range(0,N)]
# print(a)


for i in range(1,n+1):
rows = [0]
rows.extend(list(map(int,input().split())))
for j in range(1,m+1):
a[i][j]=rows[j]

9.input的各个输入窍门

input()---int(input())

n,m=map(int,input().split())

list=list(map(int,input().split()))

list[1:n+1]=list(map(int,input().split()))

*list[1:n+1]:表示列表 list 的第 1 个到第 n 个位置(不包括第 n+1 个位置)

10.list的小技巧(必看)

list的min,max,sum,count方法

》添加元素

方法功能添加方式示例
append添加单个元素到列表末尾将整个对象作为单个元素添加[1, 2, 3].append([4, 5])[1, 2, 3, [4, 5]]
extend添加可迭代对象的所有元素到列表末尾将可迭代对象的元素逐个添加[1, 2, 3].extend([4, 5])

insert(i, x):在索引 i 插入元素 x。

a = [1, 2, 3] 
a.insert(1, 5) 
print(a)  # [1, 5, 2, 3]

》删除元素

  • remove(x):删除第一个值为 x的元素,没找到会抛 ValueError

    a = [1, 2, 3, 2] a.remove(2) print(a) # [1, 3, 2]

  • pop([i]):删除并返回索引 i的元素,默认最后一个。

    a = [1, 2, 3] x = a.pop(1) print(x) # 2 print(a) # [1, 3]

  • clear():清空列表。

    a = [1, 2, 3] a.clear() print(a) # []

》查找元素

  • index(x[, start[, end]]):返回第一个 x 的索引,没找到抛 ValueError

    a = [1, 2, 3, 2] print(a.index(2)) # 1 print(a.index(2, 2)) # 3(从索引 2 开始找)

  • count(x):统计 x出现的次数。

    a = [1, 2, 2, 3] print(a.count(2)) # 2

》排序和翻转

  • sort(key=None, reverse=False):原地排序(前面讲过)。

    a = [3, 1, 2] a.sort() print(a) # [1, 2, 3]

  • reverse():反转列表。

    a = [1, 2, 3] a.reverse() print(a) # [3, 2, 1]

》复制

  • copy():返回列表的浅拷贝。

    a = [1, 2, 3] b = a.copy() b[0] = 4 print(a) # [1, 2, 3] print(b) # [4, 2, 3]

http://www.dtcms.com/a/347449.html

相关文章:

  • ComfyUI Portrait Master肖像大师中文版
  • TopK问题(堆排序)-- go
  • 牛客面经2 京东社招-002
  • 知识蒸馏 Knowledge Distillation 序列的联合概率 分解成 基于历史的条件概率的连乘序列
  • 基于SpringBoot的招聘系统源码
  • 破解秘籍——hashcat使用宝典
  • 商超场景徘徊识别误报率↓79%!陌讯多模态时序融合算法落地优化
  • 书写本体论视域下的文字学理论重构
  • 防范瓦斯爆炸:AI摄像机如何杜绝煤矿井下违规抽烟?
  • 复杂工业场景误报率↓85%!陌讯多模态火焰识别算法实战解析
  • ⸢ 零 ⸥ ⤳ 安全体系构建内容结构
  • 卷积神经网络的基本概念
  • 【码蹄杯】2025年本科组省赛第一场
  • 解决Node.js安装与npx命令问题
  • Stm32通过ESP8266 WiFi连接阿里云平台
  • 使用Lora微调大模型介绍篇
  • 【Python】新手入门:Python标准库有哪些常用模块?
  • 使用Screenpipe+本地大模型实现私人助手Agent
  • 【小宁学习日记4 Python】Python 变量与标识符全解:编程入门的基石
  • 简单AI:搜狐公司旗下AI绘画产品
  • 最新短网址源码,防封。支持直连、跳转。 会员无广
  • 部署PG一主一从
  • 使用Proxifier+vmware碰到的一些问题
  • GEO优化服务商:AI时代数字经济的新引擎——解码行业发展与技术创新实践
  • 蔬菜溯源系统的开发与设计小程序
  • 【基础-判断】使用http模块发起网络请求时,必须要使用on(‘headersReceive’)订阅请求头,请求才会成功。
  • 算法第五十五天:图论part05(第十一章)
  • 微服务架构中服务发现机制的实现与优化 NO.3(回复征途黯然.)
  • Navigation2 源码阅读 —— map_server 到底干了哈?
  • 53.Redis持久化-RDB