python 刷题最基础的一些

文章目录

数组/列表(list)

获取数组长度

python 复制代码
length=len(list)

for 循环数组

python 复制代码
for i in list:
	print (i)

打出来的就是数组里的每一个数据。

for 循环数组下标

python 复制代码
for i in range(length):
	print(list[i])

在这里,假如length是3,i是0,1,2,所以需要注意。

寻找某个数据在数组里的下标

python 复制代码
index=nums[i+1:].index(numNeed)+i+1

因为是从i+1开始找的,然后用index函数获取。

字典

python 复制代码
character={
            'I':1,
            'V':5,
            'X':10,
            'L':50,
            'C':100,
            'D':500,
            'M':1000
        }
print(character['I'])
# 输出1,要用键去读

创建一个二维数组

二维数组m行n列,创建代码如下:

python 复制代码
result=[[0]*n for i in range(m)]

二维数组m行,然后是杨辉三角那种,创建代码如下:

python 复制代码
Ylist=[[0]*i for i in range(1,numRows+1)]

然后写入数据的时候,写入某行(前行后列):

python 复制代码
result[i][:]=...

读取字典

如果用 for i in ...,取出来的只是字典的key,要键值对,得用.items()。

python 复制代码
for key,value in stockItem.items():

列表(list)排序

python 复制代码
list.sort()
  • 写列表的值
    原地修改不能用「赋值 =」
    Python 里:
    nums1 = 1,2,3 → 新建一个列表,和原来的无关
    nums1i = x 或 nums1: = ... → 才是修改原数组

二分法基本思路

代码来源:来源

python 复制代码
int binarySearch(int[] nums, int target) {
    int left = 0, right = ...;

    while(...) {
        int mid = left + (right - left) / 2;
        if (nums[mid] == target) {
            ...
        } else if (nums[mid] < target) {
            left = ...
        } else if (nums[mid] > target) {
            right = ...
        }
    }
    return ...;
}

同时注意,找区间的话,

找左区间:在nummid<target的时候,left再往右移,相等的时候我们需要让整个区间继续往左走的。

找右区间:在nummid<=target的时候,left就开始往右移了,因为它的左侧并不可能是右区间。

left来的:左边界:小于target;右边界:小于等于target

python 复制代码
# 找左边界
if nums[mid] < target:    # 比目标小 → 才往右
    left = mid + 1
else:                     # >= 目标 → 都往左找
    right = mid - 1
return left               # 最后返回 left

# 找右边界
if nums[mid] <= target:   # 小于等于 → 往右
    left = mid + 1
else:                     # 大于目标 → 往左
    right = mid - 1
return right              # 最后返回 right

字符串

字符串大写变小写

python 复制代码
s=s.lower()

字符串是否是字母或者数字

python 复制代码
ss.isalnum()

拼接list的字符串

python 复制代码
result=[]
for ss in s:
    if(ss.isalnum()):
        result.append(ss)
result=''.join(result)

数字二进制化成字符串

python 复制代码
s=bin(n)

字符出现次数

python 复制代码
num=s.count('1')

其他

运算符

python 复制代码
if (n%3==0):		# 余数
if (n/3==0)			# 除以三的浮点数得数
if (n//3==0)		# 除以三的整数得数
相关推荐
默_笙4 天前
🍙 给每个请求过安检:FastAPI 是怎么把校验写进类型注解的
python
小羊没烦恼!4 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
qq_426003964 天前
启动playwright录制codegen生成自动化测试脚本
python·自动化
虎头金猫4 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
长沙三为智能科技4 天前
家政小程序开发从0到上线:五阶段交付流程与验收清单
python
伞伞悦读4 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
只睡四小时4 天前
Canvas 弹道联机实战:700 行 + 固定时间步长
python·websocket·html5·游戏开发·canvas
C语言小火车4 天前
C/C++ 为什么需要编译器?
开发语言·c++
奇思妙想聪明勤奋的小羊4 天前
DeepAgents第5章:子Agent 与上下文隔离—让 Agent学会委派
人工智能·python·学习·语言模型
lpfasd1234 天前
2026年第38周GitHub趋势周报
python·科技·github