首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

(12)python 的列表我从没想过会那么好用

点赞过十万就算化成灰我也更新下一篇。(肯定不到,也会更的。)...小媛:Emmm,我觉得我学了好久的循环了。 小C:哈哈哈,马上就学完了呢,循环挺简单的。 小媛:我感觉我都学循环学烦了,感觉距离学习完基本的 python 语法的日子越来越远。...小媛:哈哈哈,挺简单的。 小C:你既然觉得简单那我就问问你,你知道怎么在这个列表后面添加值呢? 小媛:哈?我觉得你是在跟我寻开心。 小C:哈哈哈,你看看下面的代码。...a=[1,2,3,4,5,8,9,7,21,31] print(a[1]) a[1]=99 print(a[1]) a.append(88) print(a) 小媛:你的意思是说,使用这个列表 a,可以使用一个它自带方法叫做...小媛:我懂了,你那个 insert 传入的第一个参数 0,就是表示插入位置吧, insert 就是用来插入元素的方法,88 就是那个插入的值。 小C:是的,列表好用又简单吧。 小媛:是的,非常赞。

43120

为什么if-else会影响我的代码的复杂度

关于if-else的争议 我之前写了一篇文章《我用规则引擎消除if语句,提高了代码的可扩展性》,这篇文章我想阐述的观点是复杂的if语句可能会影响代码的阅读和代码的扩展性,会将非业务的条件逻辑与业务逻辑混合在一起...时间长了代码会越来越臃肿,因此这种情况下我推荐使用一些设计模式例如策略模式,责任链模式等去优化if语句带来的问题,文中我发现使用规则引擎也能实现类似效果,因此介绍了怎么使用规则引擎Easy Rules去取代...if-else增加了代码复杂度 文章发布后,有很大一部分读者认为只用设计模式会增加代码阅读性,还是会觉得if-else好,就算if写得再复杂,也要使用if-else。...当然也有赞同我的观点的: 统计了下,有八成读者评论是反对用其他方法代替if-else的。所以我还是想写篇文章表达下我的观点。...这里我要阐明我的一个观点: “我的观点并不是说,我们在编码时不能使用if-else,而是说我们不应该简陋地用if-else去实现业务的分支流程,因为这样随意的代码堆砌很容易堆出一座座"屎山"。

1.5K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    我为什么建议大家一定的会 C 语言

    在如今 Python 和 Java 大火的市场前景下,我还是建议,如果你还在学校读书,或者你有大把的空闲时间,不着急去找工作,那就静下心来,好好学习一下 C 语言,会让你受益终生,也会让你的编程之路走的更远...其设计的精髓,其内涵思想,都是值得当下的我们学习与借鉴的 2、C 语言作为我接触编程的开始,对我的影响很大,带我入了 IT 这行,我本人也是极其的喜欢 C 语言,C 语言涉及了很多底层的知识,比如:内存...C 语言入门比较难,我也是非科班出身,一路全凭自己摸索,自己的智商并不高,我能做的到,代表大部分人应该都可以,换一种角度思考,如果难的都搞定了,简单的还是问题吗 与 C 结缘 我说说我自己本人的亲身经历...,由一名后台转算法,仅仅用了 3 个月的时间,但是为什么我能这么快的成功转型呢 扎实的基础功底、快速的学习能力、解决问题的能力、以及个人潜力 扎实的基础功底很重要,基础是什么:数据结构 + 算法,操作系统...,这些都是相通的,公司需要我做什么,我快速学习就好 语言是工具,重要的是思想,我很认同这句话,我以前没接触过 go,在百度实习的时候,我导师还给了我 1 周的时间去熟悉,才上项目,以前没咋用 Python

    1.4K50

    为什么我做分享的时候会感觉大脑空白

    这也是我最近遇到的问题,这两个月做了两次技术分享,第一次就遇到上面的情况,有的点因为紧张怎么都想不起来,只能尴尬的说,我回头再重新捋一下发给大家。 为了避免每次遇到这种问题,我得想办法解决。...再从大脑结构来说,你可以理解它们分布在这个位置: 从距离上说,本能脑和情绪脑距离心脏更近,一旦出现紧急情况,它们就会优先得到供血,这就是为什么我紧张的时候会感觉大脑空白,因为最上方的理智脑供血不足了。...而且因为它年龄小,在遇到危险的时候,本身也竞争不过其他两重脑,所以就能解释,为什么人在遇到危险的时候都靠本能反应而不是靠理智。 02 那怎么解决这个问题呢? 其实很简单,就是打稿子,然后自己多练。...前几天和阿常聊天,她说起将要和小林连麦,想想都觉得会紧张,后来把默默把内容在脑子里过了几遍之后感觉踏实不少。...昨天我看了阿常和小林的连麦,非常稳,这也是我要继续学习的方向。 好了今天的分享就到这里。 今日鸡汤: 自信人生二百年,会当击水三千里。

    55440

    我为什么喜欢它?带有解释的推荐系统第二弹

    改进了评级预测性能,同时产生了有效的个性化解释。 近期很多工作会尝试利用用户的反馈来赋予模型可解释性。 模型 模型的整体框架如下: ? 1....这种优化策略会导致暴露偏差(exposure bias)的问题,即在测试时,模型会暴露在自己的预测中,因此误差会随着时间累积。...用户的评论生成器是希望生成和用户相近的评论,而评论判别器则希望能将生成的样本和真实的评论分开。本文采用卷积的形式来进行此操作,具体的框架如上图所示。...1.3. reinforce的评论生成对抗训练 我们假设生成器是一个虚拟的agent, 它的目的是在每次尝试中尽可能获得多的reward(由判别器的置信度给出)。...也就是说生成器的目的是尽可能的制造能骗过判别器的生成样本。 此处我们判别器的训练目标为(最大化真实样本,最小化假的生成样本): 其中表示从真实评论中采样的样本, 表示生成器生成的样本。

    65520

    为什么我的 Mac 运行缓慢以及如何使用CleanMyMac X修复它

    10 种有保证的解决方案,可加快慢速 Mac 的运行速度 1.后台运行过多 如果您的 Mac 无法再处理简单的任务,并且您想找到“为什么我的 Mac 这么慢?”...2.硬盘快满了 没有什么比过载的硬盘驱动器更能拖慢 Mac 的速度了。因此,如果有机会减轻 Mac 的负担,请抓住它!我们保证您几乎会立即看到速度的提高。...如果您在完成上述工作后仍然问为什么我的 MacBook 这么慢,请确保您的 Mac 已安装所有最新更新。 4....我们所有人都会下载一开始看起来有用且令人兴奋的应用程序,但结果却使我们的磁盘变得杂乱无章,而不是经常使用。 快速修复:卸载未使用的应用程序 回答“为什么我的 iMac 这么慢?”...这就是为什么最好使用CleanMyMac X等工具清除设备上的残留物。它的卸载程序模块显示您有多少应用程序,并方便地将所有剩余应用程序收集在一个选项卡中。

    2.8K30

    我有两个列表,现在需要找出两个列表中的不同元素,怎么做?

    一、前言 前几天在帮助粉丝解决问题的时候,遇到一个简单的小需求,这里拿出来跟大家一起分享,后面再次遇到的时候,可以从这里得到灵感。...二、需求澄清 问题如下所示: 三、实现过程 这里【听风】一开始给了一个集合求差集的方法,差强人意。 不过并没有太满足要求,毕竟客户的需求是分别需要两个列表中不重复的元素。...后来【听风】又给了一个方法,如下所示: 这次是完全贴合要求了,代码运行之后,可以得到预期的效果: 这里再补充一个小知识点,提问如下图所示: 后来【听风】给了一个方法,如下图所示: 原来列表转df...是这样玩的,接下来你就可以把数据导出为Excel等其他格式了,不再赘述。...三、总结 大家好,我是皮皮。这篇文章主要盘点一个Python实用的案例,这个案例可以适用于实际工作中文件名去重等工作,感谢【听风】大佬给予耐心指导。

    3.3K10

    MySQL深入学习第十二篇-为什么我的MySQL会“抖”一下?

    你的 SQL 语句为什么变“慢”了 在本栏第 2 篇文章《MySQL深入学习第二篇 - 一条SQL更新语句是如何执行的?》中,我为你介绍了 WAL 机制。...要尽量避免这种情况,你就要合理地设置 innodb_io_capacity 的值,并且平时要多关注脏页比例,不要让它经常接近 75%。...,如果跟它相邻的数据页也还是脏页的话,也会被放到一起刷。...在文章里,我也给你介绍了控制刷脏页的方法和对应的监控方式。 文章最后,我给你留下一个思考题吧。...但如果你在配置的时候不慎将 redo log 设置成了 1 个 100M 的文件,会发生什么情况呢?又为什么会出现这样的情况呢?

    52930

    一名在读研究生的自白:我为什么会沉迷于openGauss 社区?| Q推荐

    在将该项目传到 openGauss 社区的官方代码托管仓库后,陈同学收到了不少来自其他开发者的正向反馈邮件,同时也获得了老师的肯定。...,这样积极的社区氛围让我很喜欢。”...“在参与 openGauss 社区交流之前,在这方面我就是个小白,我现在研究的课题也与 openGauss 强相关——借助 openGauss 的插件化架构,自定义一些算子实现以加速 openGauss...陈同学就曾参加过由 openGauss 社区与 Gauss 松鼠会、墨天轮联合举办的“知识问答竞赛"和“8 小时玩转 openGauss 训练营"两个活动。...通过陈同学我们也了解到,他身边许多同学在遇到技术问题时,也会优先想到去 openGauss 社区相关的 SIG 小组去寻求解决方案。

    30320

    为什么我打开一些网站会提示:将此站点作为应用安装,我的网站要怎么样才可以和他一样

    要使您的网站在用户访问时出现“将此站点作为应用安装”的提示,您需要为网站添加一个名为“manifest.json”的文件。这个文件包含了网站的基本信息,如名称、图标等。...以下是一个简单的manifest.json文件示例: { "name": "您的网站名字", "short_name": "简短名字", "description": "网站描述", "...接下来,您需要在网站的HTML文件中的标签内添加以下代码,以引用manifest.json文件: 完成以上步骤后,当用户访问您的网站时,他们的浏览器将显示“将此站点作为应用安装”的提示。...确保HTML文件的标签内正确引用了manifest.json文件。 清除浏览器缓存并刷新网页。有时浏览器会缓存旧的网页内容,导致更新不及时。 使用浏览器的开发者工具检查是否有错误。...如果问题仍然存在,请提供更多关于您的网站的详细信息,例如使用的框架、浏览器类型等。这将有助于我为您提供更具体的解决方案。

    69050

    在VisualStudio中提供运行时和设计时支持的WPF本地化解决方案

    在这种情况下,我还想: 在运行时切换区域设置——可自动更新所有得本地化元素 使用现有的可以在Visual Studio中维护的资源文件(**.resx files)。...这篇文章中的第一种方法(不使用LocBaml.exe的目标本地化,https://www.codeproject.com/KB/WPF/Article.aspx)给了我很多启发,但为了在运行时自动更新元素...(对于所有元素,甚至是现有的Windows),我不得不寻找其它的解决方案。...使用代码 ObjectDataProvider自动更新 为了在更改当前区域设置时自动更新元素,我正在利用ObjectDataProvider提供的功能特性。...我喜欢扩展的代码生成器,因为它生成了非常有用的字符串格式化方法。 ?

    2K20

    Android 官方怒推的 Jetpack Compose 到底是什么

    我为什么要学一个看起来并没有什么本质区别的新写法来为难自己? 其实所谓「声明式 UI」,指的是你只需要把界面给「声明」出来,而不需要手动更新。关键在于「不需要手动更新」。...比如左边这个布局里的 TextView,如果它对应的数据改变了,我要怎么把新的文字更新到它?很简单:findViewById()、setText() 对吧?...传统写法的「命令式」并不在于 xml 部分,而在于 Java 部分:Java 代码去指挥、去命令界面更新,这才是「命令式」的含义所在;而 Compose 通过订阅机制来自动更新,所以不需要做这种「命令」...我用它不就得了,为什么要费这么大劲去用 Compose 呢? 首先,对!Data Binding 和 Compose 本质上都是通过界面对数据进行订阅来实现了界面的自动更新,但!它们是有关键区别的。...showImage = false 这个元素会从界面中完全消失,就像从来没有出现过一样,而不是用 setVisibility(GONE) 这种方式从视觉上隐藏。

    2.4K40

    观察者模式浅析

    观察者模式是一种对象行为型模式,其意图是定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变的时候,所有依赖于它的对象都得到通知并被自动更新。...观察者模式也叫发布-订阅模式(Publish-Subscribe) 一、观察者模式的基本介绍 1.1 意图 定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变的时候,所有依赖于它的对象都得到通知并被自动更新...从上述Observable的截图可以看出,Observerable维护一个changed状态和需要通知的订阅者列表。...Eric说我先去KTV看下,具体房间号定好,我再通知大家。 就这样一个场景,很适合观察者模式,借助JDK内置的Observer和Observable,我们来看下如何完成。...[Eric]的通知信息==> 西城广场银乐迪506 [Lucy]收到来自[Eric]的通知信息==> 西城广场银乐迪506 [John]收到来自[Eric]的通知信息==> 西城广场银乐迪506 小结

    43230

    Python办公自动化|自动更新不对称表格

    在之前我们详细讲解过如何使用Python自动更新Excel表格并调整样式,在上次的自动化案例中要求两个或多个Excel表格数据要匹配/对称才能够自动更新,今天我们再次来解决在数据不对称的情况下如何自动更新表格...,这是更常见的情况,也是我遇到的一个具体需求。...接下来是根据新名单中出现的名字找各自在总表中的分组,思路是用np.where,如下所示 np.where(df2 == '死神板') # (array([7], dtype=int64), array(...可以看到,结果是一个Series列表,这不正好是pd.concat的对象嘛,由于接下来要横向合并,因此每个Series需要重置索引保证都是从0开始 df_final = pd.concat(results_lst...注1:本文使用的数据与源码可在后台回复0608获取 注2:Python办公自动化系列旨在用Python解决工作中的繁琐操作,如果你有相关需求可在后台给我留言,我们会无偿为你解决并分享!

    1K10

    员工写了个比删库更可怕的 Bug!

    大家好,我是鱼皮,今天是公司没破产的第 102 天。 想必大家都听说过删库跑路吧,我之前一直把它当一个段子来看。 可万万没想到,就在昨天,我们公司的某位员工,竟然写了一个比删库更可怕的 Bug!...然后员工小 A 大叫:“我 X,是我今天执行单元测试更新数据的时候,少加了个 where 条件!”...indices.stream() .map(userBakList::get) // 根据索引获取 User 对象 .collect(Collectors.toList())) // 每组1000个元素的列表...1)控制操作权限 为了防止用户执行 update、delete 操作时不小心漏掉了 where 条件、直接更新全量数据,企业中一般是会禁止不带 where 条件的修改操作的。...出现这次的事故后,我也立刻给 MySQL 开启了 sql_safe_updates 配置: 缺少 where 条件的更新会直接触发下列报错: 之前为什么没加?

    38520

    Pipe -- 让你的 Python 代码更简洁

    在这篇文章中,云朵君将和大家一起学习这个很酷的方法~ 首先需要安装Pipe: pip install pipe Where 迭代器中的过滤元素--where 与SQL类似,Pipe的where方法也可以用来过滤迭代表中的元素...select将一个方法应用于迭代器的每个元素。 在下面的代码中,我使用select将列表中的每个元素乘以2。...现在,你可能想知道:如果where和select的功能与map和filter相同,我们为什么还需要这些方法? 因为可以使用管道在另一个方法之后插入一个方法。...列表中的元素分组 有时,使用某个函数对列表中的元素进行分组可能是有用的。这可以用groupby方法轻松实现。...然而,这种方法更加灵活,因为它使你能够使用一个键获得独特的元素。 例如,你可以用这个方法来获得一个小于5的唯一元素和另一个大于或等于5的唯一元素。

    54130

    程序员word编写小记

    为什么呢?今天写了一下,才发现,这和word的使用熟练程度有很大关系。 如何插入目录? 如何自动更新目录层级的序号? 如何优雅插入高亮代码块? 如何导出带目录导航的pdf?...在大纲视图中,编辑内容层级,会容易的多。 ? 然后,把光标放在需要改变层级的内容上,点击下拉框选择“1级”等级别就好。...对程序员来说,当然要采用自动化的方式。 这样做: “开始”–>“多级列表”–>“自定义新的多级列表…” ? 敲黑板!!...,再把光标挪到首位,再点击“包含的级别编号来自” 次序搞错的话,会发现多级标题的需要是倒序的,所以一定要注意。 到这一步,点击“确定”按钮后,标题应该已经自动加上了编码。...然后,在框内输入代码,可以专门设置一个代码的样式,我设置的样式如下: ? 最后的效果如下: ? 导出带目录导航的pdf windows: 另存为–>pdf–>选项–>选择“标题”就可以了 ?

    1.3K30

    漫谈模式之观察者模式

    今天,我们来分享行为型模式的另外一个成员:观察者模式。观察者是一种行为型模式,它定义了对象之间的一种一对多的依赖关系,使得每当一个对象状态发生改变时,其相关依赖对象都会得到通知并自动更新。...观察者模式也叫发布-订阅模式(Publish-Subscribe)观察者模式的基本介绍意图定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变的时候,所有依赖于它的对象都得到通知并被自动更新。...java.util.Observable从上述Observable的截图可以看出,Observerable维护一个changed状态和需要通知的订阅者列表。当状态改变的时候,会依次通知各个订阅者。...Eric说我先去KTV看下,具体房间号定好,我再通知大家。就这样一个场景,很适合观察者模式,借助JDK内置的Observer和Observable,我们来看下如何完成。...小结观察者模式的应用非常广泛,例如在GUI编程中,当一个用户界面元素的状态改变时,可以使用观察者模式来通知其他相关的用户界面元素进行相应的更新。

    35240
    领券