python dfs算法_2020蓝桥杯python组备战方法

2023-11-09

在蓝桥杯的程序设计比赛里新增加了python组,这是一个全新的组别,目前蓝桥杯官网已经开通了python的练习平台,链接http://dasai.lanqiao.cn/

如何准备2020年蓝桥杯python程序设计呢,我分为四个部分讲解,了解这四个部分,将有助于备战此次比赛

一、python基本的语法

学到面向对象就差不多了,不需要太深入学习面向对象后面的内容。因为这是程序设计比赛,很少会涉及到python的高阶知识,因此我建议学完基本的面向对象即可,后面的不必深入。当然,python在人工智能等领域是有很大用武之地的,因此想走这些方向的同学可以深入的学下去。

二、掌握python标准库

蓝桥杯是不支持第三方库的,后面注意事项里面我会讲到,但是python的标准库就已经琳琅满目了,学好python标准库,将是一个事半功倍的过程。

三、找一本大纲开始刷题和学习

推荐《算法竞赛入门经典》,虽然是c++的,但是非常适合作为大纲,题目也完全符合蓝桥杯难度,你需要做的,就是学会这些思想,然后用python实现。

四、注意事项

1.不支持第三方库

蓝桥杯python组,不支持第三方库,仅能使用python的标准库,这就需要知道python的常用标准库有哪些,哪些在算法比赛中比较常见,学会一些常用的标准库,对于我们解题是十分有帮助的,方便且快速。

对于蓝桥杯中可能用到python的标准库,我会更新给大家,关注我,不迷路,这里先将整个思路讲一遍。

公众号:

http://weixin.qq.com/r/UjuutqbE0PuvreLV925A (二维码自动识别)

2.只有python自带的IDE

所有,还在使用pycharm的同学,请赶紧适应过来,否则在比赛的时候肯定会吃大亏,这个ide不是很好用

3.python版本为Python 3.6.5

请务必按照这个版本,这里推荐使用Anaconda,这里就不详细介绍了

4.刷题

推荐《算法竞赛入门经典》,这是c++的,可以当做一本大纲来使用,主要理解其中的思想,自己用python实现

ps:python的算法书,好的是真没有什么呀

5.用python刷算法题中的小技巧

我们需要知道python的一些常用小技巧:

下面列出一些在蓝桥杯python编程需要用到的小技巧:

学习过python的同学一定知道,学习python语法是很简单的一件事情。相比于c,c++,再简单不过了,我相信稍微有一点编程基础的同学,用上一天就能把python的基础语法差不多掌握。但是,在实际写代码的时候,总是会遇到各种各样的“坑”,让初出茅庐的我们经常“卡死”在某一个小环节上,然后开始怀疑人生。

我将一些比较实用的坑给大家罗列一下,让代码之路更加平坦一些吧!

列表怎么转化为字符串

一个列表存储了一段字符

ls 

我们怎么样把这个列表变成一个字符串 “123”呢?

也许你有很多的想法,但是下面这一句代码可以很好的解决这个问题:

""

这样就将ls转化为字符串了,它的返回值时:“123”

字符串可以看做可迭代对象

众所周知,列表是可以迭代的:

ls 

a b c

字符串也可以这样操作:

s 

a b c

字符串是不可变对象

我们有时候会想改变字符串里的某一个字符,例如将“abc”变成“abd”,于是有了下面的代码:

s 

看上去非常合理,运行一些,哦豁,报错了,鲜红的字体:

TypeError: 'str' object does not support item assignment

这是为啥呢?真相就是,在python中,字符串是不可变的,在python中,像这样的例子还有这些:

  • 数字
  • 字符串
  • 元组
  • 不可变集合

他们都不支持原处修改的,切记

那么,怎么样去修改固定的某一个字符呢?

可以先将字符串转化为列表,修改完之后再转化为字符串

s 

太长了,有没有更好一点的办法呢,有,使用replace函数:

s 

当然还有其他的办法,但是你要记住的就是,字符串是不可变的!

怎么样接收由空格分开的多个数据

这个在算法题里面是很常见的,

我们有时候想会接受多个数据,但是是用空格分割的,怎么样去接收呢?很简单,用split函数:

ls = input().split()

split()函数括号里填写的是分割符,不填默认的就是空格,这样,假如你输入 1 2 3:

ls就等于 [1,2,3],接下来你就可以随意取用了

同时改变列表中所有元素的类型

比如说你有一个列表,里面的列表元素全部都是字符型,你需要将这些字符全部转化为int型,这个时候你可以写一个循环来实现,但是更加简洁的方法是使用map函数

ls 

map函数说白了,就是对可迭代对象里面的每一个元素,进行同一种映射,上面的代码就是将ls里的每一个元素,都用int()函数映射为int型,将返回的对象再用list()函数转换为列表

假如ls1 = ["1","2","3"]

那么ls2 = [1,2,3]

公众号:

http://weixin.qq.com/r/UjuutqbE0PuvreLV925A (二维码自动识别)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python dfs算法_2020蓝桥杯python组备战方法 的相关文章

  • [CCPC] 2017秦皇岛 NumbersI

    题目描述 DreamGrid has a nonnegative integer n He would like to divide n into m nonnegative integers a1 a2 am and minimizes
  • LeetCode高频算法刷题记录4

    文章目录 1 二叉树的最近公共祖先 中等 1 1 题目描述 1 2 解题思路 1 3 代码实现 2 全排列 中等 2 1 题目描述 2 2 解题思路 2 3 代码实现 3 相交链表 简单 3 1 题目描述 3 2 解题思路 3 3 代码实现
  • Ubuntu18.04 下载与安装

    阿里云里面有很多镜像 https opsx alibaba com mirror Ubuntu各个版本的镜像下载地址 http mirrors melbourne co uk ubuntu releases 最新百度经验 Ubuntu19
  • 纯HTML+CSS网页设计——林允儿(可做网页课程作业)

    作品介绍 网页为作者一次课程作业 效果个人觉得还行 其中抛弃了导航栏的使用 主要每次都导航栏 写烦了 采用的是图谱的形式 主要也是因为最近在学 页面主要有6个 有三个是较重复的 所以主要页面是四个 具体的直接看图吧 作品展示 首页 首页背景
  • Python全面解读2018电影票房市场

    作者 法纳斯特 来源 法纳斯得 双11已经过去 双12即将来临 离2018年的结束也就2个月不到 还记得年初立下的flag吗 完成了多少 相信很多人和我一样 抱头痛哭 本次利用猫眼电影 实现对2018年的电影大数据进行分析 01 网页分析
  • FeatureToggle

    概述 为了控制功能开启与关闭 减少代码中的if else繁琐的逻辑判断 主要通过spring的aop及java的注解实现 目前主要包含6个部分的代码 支持内存存储和部分策略 源码git 稍后放源码 功能 单个开关的配置 开关组的配置 通过组
  • MongoDB总结

    MongoDB的官方文档基本是how to do的介绍 而关于how it worked却少之又少 本人也刚买了 MongoDB TheDefinitive Guide 的影印版 还没来得及看 本文原作者将其书中一些关于MongoDB内部现
  • 线性代数学习之初等矩阵和矩阵的可逆性

    求解矩阵的逆 接着https www cnblogs com webor2006 p 14280299 html继续往下学习 在上一次中学习了线性系统以及它的求解 在之前https www cnblogs com webor2006 p 1
  • Synchronized和ReentrantLock的区别

    1 Synchronized是一个关键字 ReentrantLock是一个类 2 Synchronized可以用来修饰普通方法 静态方法和代码块 而ReentrantLock只能用于代码块 3 Synchronized会自动加锁与释放锁 R
  • VBA读取其他Excel内容

    VBA读取其他Excel内容 AccessDataBaseEngine安装 Excel内容读取 采用Microsoft于2020 8 11新出的 AccessDataBaseEngine Microsoft Access 2016 数据库引
  • 关于隐式实例化,显示实例化,显示具体化的理解.

    对于模板函数 编译器会通过对这个模板含数的引用生成一个含数的实例 这通常叫隐式实例化 例如下面的函数模板 template lt class T gt void Swap T a T b 而相对于隐式实例化 则可以自己编写显示实例化来说明
  • 怎么查看linux库是使用哪个版本的编译器编译的

    由于对同样的库的源码 有的使用4 1 2编译器编译的 有的是4 1 1等等 结果导致有时候存放的时候忘记了写版本信息 导致要重新编译 解决方法 objdump s section comment your program 查看程序编译器版本
  • i.mx287学习笔记8-buildroot编译mplayer

    上面是我的微信和QQ群 欢迎新朋友的加入 1 开始 嵌入式linux几种播放视频的方法 1 交叉编译mplayer smplayer等软件 移植到嵌入式平台 这种方法在嵌入式平台不能控制窗口位置 不能很好的嵌入到自己程序的窗口中去 但是实现
  • Python列表切片中的None

    None起到的是增加维度的作用 示例如下 import numpy as np z np ones 3 3 3 print z shape 3 3 3 print z None None shape 3 1 1 3 3 print z No
  • java高级用法_java 高级用法整理

    一 retentionpolicy class vs runtime区别 java5 增加了注解的功能 其中retentionpolicy注解的生命周期 提供了三种选择策略 source class和runtime三种选择 source 源
  • mac ping: sendto: Host is down

    mac ping 内网机子提示 host is down Request timeout for icmp seq 0 但是其他小伙伴ping是没问题的 mac和小伙伴的电脑网段 子网掩码 路由器 DNS一致 查询后是因为mac使用了vmw
  • 手机微信连不上wifi服务器怎么回事,微信连不上wifi怎么办?

    大家经常会在家中使用微信进行聊天 那么如果微信连不上wifi了怎么办 方法步骤 1 微信是大家最常用的聊天工具之一了 几乎每天都在使用 大家在家里使用的话经常会连接wifi 但有时候会遇到微信连不上wifi的问题 却又不知道怎么解决 接下来
  • 全角字符unicode码对应表

    Uni GB Uni GB Uni GB Uni GB Uni GB 00A4 A1E8 00A7 A1EC 00A8 A1A7 00B0 A1E3 00B1 A1C0 00B7 A1A4 00D7 A1C1 00E0 A8A4 00E1
  • 对于Transformer 模型----可以从哪些地方进行创新和改进

    Vit 全称 Vision Transformer 是Transformer在CV方向的应用 是NLP与CV的相互联系 相互促进 相互影响 自Transformer应用进计算机视觉领域以来 与其相结合的新模型大都表现出了不错的效果 但是 这

随机推荐

  • 微信小程序:排行榜页面模板

    文章目录 1 前言 2 模板代码 3 结语 1 前言 在开发一款背单词的微信小程序时 为了加强用户的体验感 刺激用户积极学习 小程序中需要有排行榜的模块 通过打卡天数来排名 让用户有攀比学习的心里 具体的页面截图如下 2 模板代码 wxml
  • python-数据分析(6-numpy)

    Numpy 6 Numpy 6 1 Numpy介绍与安装 Numpy是什么 Numpy Numerical Python 是目前Python数值计算中最为重要的基础包 大多数计算包都提供了基于Numpy的科学函数功能 将Numpy的数组对象
  • C#开发系列(四)——文档注释

    C 为程序员提供一种机制 以使用包含 XML 文本的特殊注释语法记录其代码 在源代码文件中 具有特定窗体的注释可用于指示工具从这些注释生成 XML 并将其置于后面 使用此语法的注释称为文档注释 它们必须紧跟在用户定义的类型 如类 委托或接口
  • EF Core 迁移数据库,以及对数据库升级的思考

    这两天一直在学习ABP VNext框架 整到数据库那一块了 发现问了问组里大佬 要使用EFCore迁移数据库 我寻思这和我自己以前搞得不太一样 以前是要写SQL或者直接GUI建表 现在怎么命令行敲一下就自动生成了 写个博客记录一下 EF C
  • jvm系列(3)java类加载机制

    我们知道 我们写的java文件是不能直接运行的 我们可以在IDEA中右键文件名点击运行 这中间其实掺杂了一系列的复杂处理过程 这篇文章 我们只讨论我们的代码在运行之前的一个环节 叫做类的加载 按照我写文章的常规惯例 先给出这篇文章的大致结构
  • 阿里三面 失败告终

    update 2015 04 16 在一个tomcat下 用classloader加载了某个类之后会将该类信息放入方法区 永久代 当这个类创建了某个线程 比如周期显示当前时间 那么会导致这个类信息一直存在于永久区中 即使这个类的主要工作已经
  • mysql集群+复制

    详解MySQL集群下的复制 replicate 原理 1 集群下的复制 1 1 简述 从MySQL 5 1 开始 就支持集群 复制了 这对于想要构建一个高可用方案的用户来说 无疑是个惊喜 在这种模式下 既有主从的实时备份 又有基于集群的负载
  • 《算法导论》常见算法总结

    前言 本篇文章总结中用到很多其他博客内容 本来想附上原作链接 但很久了未找到 这里关于原创性均来源于原作者 分治法 分治策略的思想 顾名思义 分治是将一个原始问题分解成多个子问题 而子问题的形式和原问题一样 只是规模更小而已 通过子问题的求
  • 大数定理与中心极限定理

    大数定律 定义 理解 可以用样本均值估计总体分布的均值 频率趋近于概率 举例 抛N次硬币 当N趋近于无穷大时 正面出现的频率等于正面出现的概率 中心极限定理 定义 林德贝格 勒维中心极限定理 理解 1 样本的平均值约等于总体的平均值 2 不
  • 解决php中redis client进行subscribe操作出现timeout的问题

    出现该问题的原因是poll设置接收超时所致 这个超时默认设置60s 设置Redis OPT READ TIMEOUT配置项 解决方法如下
  • python串口模块_使用python pyserial模块串口通信

    最近调试通信模块时 需要用UART串口输入AT命令控制模块 手动输入不便于自动化 所以就学习了下使用python进行串口控制 serial模块安装 pip install pyserial 常用的方法函数 导入串口模块import seri
  • SpringBoot过滤器Filter的使用-基础篇

    1 过滤器 Filter 简介 1 1 过滤器 Filter 介绍 Filter 是 JavaEE 中 Servlet 规范的一个组件 位于包javax servlet 中 它可以在 HTTP 请求到达 Servlet 之前 被一个或多个F
  • 目的:VSCode Remote-SSH连接远程失败timeout

    目的 VSCode Remote SSH连接远程失败timeout 环境 系统 win10 环境 VSCode 1 51 1 问题分析 正常使用VSCode的情况下 突然发现 解决步骤 判断可能是ssh问题 cmd打开控制台或者进入wind
  • 【华为OD统一考试A卷

    华为OD统一考试A卷 B卷 新题库说明 2023年5月份 华为官方已经将的 2022 0223Q 1 2 3 4 统一修改为OD统一考试 A卷 和OD统一考试 B卷 你收到的链接上面会标注A卷还是B卷 请注意 根据反馈 目前大部分收到的都是
  • 网络工程专业毕业设计选题汇总

    文章目录 0 简介 1 如何选题 2 最新网络工程选题 2 1 Java web SSM 系统 2 2 大数据方向 2 3 人工智能方向 2 4 其他方向 4 最后 0 简介 学长搜集分享最新的网络工程专业毕设毕设选题 难度适中 适合作为毕
  • 详解c++---set的介绍

    目录标题 set容器的介绍 set的构造函数 insert函数的介绍 find函数 erase函数 count函数 lower bound upper bound multiset set容器的介绍 set容器可以看成我们上一篇文章学习的K
  • 会做产品分析的产品经理,能力都不会太差!这份分析框架,建议收藏!

    产品经理要提升产品能力 有几种方式 1 做项目 从调研到设计 从研发到运营 遇到各种问题 并解决 最终达成业务目标 2 看书 学习其他人分享的知识 将知识应用在项目中 提升决策能力 3 向大佬请教 向产品前辈请教 打开自己的知识盲区 提升自
  • Vuecli3 axios开发环境代理和线上代理设置

    文章目录 1 概述 前后端分离的情况下肯定会跨域 这篇文章主要讲axios跨域的设置 2 本地开发环境配置 2 线上环境配置 用nginx作反向代理 不用本地代理了 1 概述 前后端分离的情况下肯定会跨域 这篇文章主要讲axios跨域的设置
  • 学c语言的第一步,编译器的使用

    学习c语言在不同的平台 有不同的编译器 其中windows平台有visual studio的IDE codeblocks eclipsec c 和QT编译器 而在Linux平台有vi vim codeblocks eclipsec c 和Q
  • python dfs算法_2020蓝桥杯python组备战方法

    在蓝桥杯的程序设计比赛里新增加了python组 这是一个全新的组别 目前蓝桥杯官网已经开通了python的练习平台 链接http dasai lanqiao cn 如何准备2020年蓝桥杯python程序设计呢 我分为四个部分讲解 了解这四