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)		# 除以三的整数得数
相关推荐
CCblandy19 分钟前
向量检索 ANN 参数实测:换一种数据分布,recall 掉了 51 个百分点
人工智能·python·算法·自然语言处理·性能优化
niucloud-admin34 分钟前
NIUCLOUD LITE AI开发文档—模块开发:支付管理
开发语言
云和数据.ChenGuang1 小时前
print(f“a+b=“,result) print(f“a+b={result}“)区别
java·前端·人工智能·python·深度学习
2601_962885721 小时前
如何用 Python 算最大回撤和回撤恢复期?
java·数据库·python
dear_bi_MyOnly1 小时前
栈和队列:从原理到应用全解析
c语言·开发语言·c++·学习·分类
Want5951 小时前
Python大雪纷飞①
开发语言·python·数学建模
程序员清风2 小时前
Python 数据可视化入门:Matplotlib 核心用法
python·信息可视化·matplotlib
yujunl2 小时前
重写了一个BOM查询的脚本
开发语言
溪语流沙2 小时前
【Web全栈进阶】前端对接新契约:信封解包 + 统一错误处理
前端·vue.js·python·状态模式·fastapi
Python图像识别2 小时前
56-【2027毕设】YOLO11X光安检危险物品检测系统 - Python完整源码+PyQt5界面+训练模型+数据集
python·qt·课程设计