蓝桥杯国赛前一晚知识点准备(十六届python)

许愿国三

1、判断文件最后一行终止输入

复制代码
with open('example.txt', 'r') as file:
    while True:                 # 开始一个无限循环
        try:
            line = file.readline()  # 试图读取文件的一行
            if line:               # 如果读取到了一行(不是文件末尾)
                print(line.strip())  # 打印这行内容(去掉首尾空白字符)
                # 在这里可以进行其他输入处理操作
            else:                  # 如果没有读取到内容(文件末尾)
                break              # 跳出循环
        except EOFError:           # 捕获文件末尾错误(EOFError)
            print("已到达文件末尾,终止输入")
            break                  # 跳出循环

2、输出

复制代码
打印小数:print("{:.2f}".format(x))
print("%.2f"%cnt)
print(round(x,2))
打印字符串:print(" ".join(parts))
print("%s"%x)

3、模拟栈(eg:AcWing - 算法基础课

复制代码
dic={'(':0,'+':1,'-':1,'*':2,'/':2}
op=[]
num=[]

def new_eval():
    b=num.pop()
    a=num.pop()
    c=op.pop()
    x=0
    if c=='+':
        x=a+b
    elif c=='-':
        x=a-b
    elif c=='*':
        x=a*b
    else: x=int(a/b)
    num.append(x)

a=input()
n=len(a)

i=0
while i<n:
    c=a[i]
    if c.isdigit():
        j=i
        x=0
        while j<n and a[j].isdigit():
            x=x*10+int(a[j])
            j+=1
        i=j-1
        num.append(x)
    elif c=='(':
        op.append(c)
    elif c==')':
        while op[-1]!='(':
            new_eval()
        op.pop()
    else:
        while len(op) and dic[op[-1]]>=dic[c]:
            new_eval()
        op.append(c)
    i+=1
while len(op):
    new_eval()
print(num[-1])

4、二分(eg:AcWing - 算法基础课

复制代码
n,m=map(int,input().split())

a=[int(x) for x in input().split()]
n=[int(x) for x in input().split()]

while m:
    m-=1
    q=int(input())
    l=0
    r=n-1
    
    while l<r:
        mid=l+r>>1
        if q<=a[mid]:
            r=mid
        else: l=mid+1
    if a[l]!=q:
        print("-1 -1")
    else:
        print(r,end=' ')
        l=0
        r=n-1
        while l<r:
            mid=l+r+1>>1
            if q>=a[mid]:
                l=mid
            else:
                r=mid-1
        print(r)
相关推荐
论文复现现场6 小时前
企业知识库 RAG 用什么模型便宜?GLM-5.3-Flash 长文本 API 实测
python·rag·企业知识库·大模型api·glm-5.3-flash
IT_陈寒6 小时前
Vue的响应式让我熬到凌晨三点,原来漏了这个小细节
前端·人工智能·后端
Blanche15006 小时前
利用 RAG 为答疑机器人扩展知识范围
前端
天若有情6737 小时前
【纯前端小工具】公历生日转农历,批量查询每年农历生日对应的公历日期(GitHub Pages在线直接用)
前端·javascript·github pages·农历转换·lunisolar·网页小工具
SoonITer7 小时前
怎样构建一个 Agent-friendly 的网站
前端·agent
梦在远山后7 小时前
从手写 Loop 到可恢复 Runtime:用 LangGraph、PostgreSQL Checkpoint 与 AG-UI 跑通中断恢复
python·langchain·agent
颜进强7 小时前
01 · NestJS 是什么:用途、解决什么问题、与热门框架对比
前端·后端·ai编程
wendZzoo7 小时前
前端工程师的 3D 第一课:一个模型如何进入网页
前端
Yolanda_20227 小时前
8.tensorboard的使用
python
颜进强7 小时前
04 · NestJS 依赖注入:你在 `@Module` 写的 providers,和构造参数里那个类型,是怎么"对上"的?
前端·后端·ai编程