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

再用100行代码支援青岛防疫工作

新故事背景: 上周末,半夜11点多写完了《用100行代码支援青岛抗击疫情》,大概内容是帮助之前同学来处理几个excel匹配问题。...然后呢,这家伙昨天又死皮赖脸来了,当然是带着一些新问题来了,毕竟这些人都是无事登三宝殿。 又来了什么问题,因为涉及到数据隐私问题,就只能简单描述。...在上面表中【户籍地】一栏,很多信息应该是放在备注里,但是各种各样原因,数据是乱七八糟,现在需要将【户籍地】栏中,不是该地址信息内容都剪切到备注里。...都大概整理了相关内容目录,但是今天发现,处理问题不仅仅是一个包功能,可能是一连串内容都需要有点点了解,所以后面在考虑考虑是否继续。或者你有什么更好想法或者建议,也欢迎提供。...好了,今天就分享到这里,是马拉松程序员,可不至于代码

48230

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

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

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

在创业公司当好工程师 7 个特质

一位顾客报告一个紧迫问题,你必须尽快将其修复;服务器 CPU 负载高峰,你必须找出原因;数据被破坏,你必须找出罪魁祸首。良好调试技巧让你更快地完成工作。...2、勇敢跳进你不知道是什么地方 作为创业工程师,你经常需要跳入大又不熟悉代码库。可能需要研究一些开源工具,因为该工具按你设想工作。或者你可能需要了解另外同事代码,因为他没有修改时间。...另一部分来自于熟悉工具搜索代码库,跳转到相关部分,并查找相关提交历史版本控制,所有这些快捷键可以减少了解不熟悉代码时间。...高效工程师建造了大量工具,这在创业公司尤为重要,因为你时间更有限,需要完成事情更多。大型机构可能有专门工具团队帮助工程团队更有效做事。...并且创业公司越后期,越有可能去填补这些专业领域,那么你就要找到特定角色帮助完成。

65970

4个步骤,3种笔记,教你学会麦肯锡笔记思考法(2)

可以看到,上面四种笔记其实就是按照解决问题顺序建立,这就是麦肯锡流笔记法精髓,也是它区别于其他笔记方法最大不同之处。...首先,最基本做法就是将收集信息按照“Where(问题所在)” “Why(原因)” “How(对策)”三种意义区分,这样我们就能够找出解决问题相关论点。...制作标签最重要一点就是用具体语言概括标签内容,因为使用表达越具体越简单,应该关注和解决主题就越明确。...写到这儿,其实感觉这种方法并不是我们当下这个时代最好选择,觉得当需要快速,及时记录大量信息时候,使用手机来得更快,而且可以真正做到一字不漏。...那么在麦肯锡,这是一条法则,如果没有准备好问题的话,就不能展开调查,从这里我们可以感受到麦肯锡对工作目的性与效率还是非常重视。放眼现在大多数职场工作氛围,有多少做到这样呢? ?

64840

ASP.NET Core中GetService()和GetRequiredService()之间区别

如果您正在使用第三方容器,请尽可能使用GetRequiredService- 如果发生异常,第三方容器可能就会根据异常信息提供相应诊断信息,以便您可以找出未注册预期服务原因。...当然,您通常根本不应该直接在代码中使用IServiceProvider。相反,您应该使用标准构造函数注入,并让框架承载并在幕后使用IServiceProvider。...它们只是一种便利,因此您在自己代码中不需要使用更多typeof()和类型转换。...如果您使用GetService(),那么您需要在调用代码中检查是否为null,并且通常需要抛出异常。那个空检查代码需要在任何地方重复。 失败很快。...找出导致异常原因总是比显式告诉你InvalidOperationException更困难,需要做更多工作。 允许对第三方容器进行高级诊断。

1.4K20

ASP.NET Core中GetService()和GetRequiredService()之间区别

,希望对大家有所帮助。...如果您正在使用第三方容器,请尽可能使用GetRequiredService- 如果发生异常,第三方容器可能就会根据异常信息提供相应诊断信息,以便您可以找出未注册预期服务原因。...它们只是一种便利,因此您在自己代码中不需要使用更多typeof()和类型转换。...如果您使用GetService(),那么您需要在调用代码中检查是否为null,并且通常需要抛出异常。那个空检查代码需要在任何地方重复。 失败很快。...找出导致异常原因总是比显式告诉你InvalidOperationException更困难,需要做更多工作。 允许对第三方容器进行高级诊断。

1.3K60

为什么说Kotlin可读性比Java好?

其实,如果一段代码需要你多读个两三遍才能很好理解,这本身不就说明,这段代码可读性不高吗?...这是一个很多人都会错误观点。 但是,在真正工作中,代码可读性,恐怕至这一个方面。为了考察所谓代码可读性涉及到哪些方面,我们假设两个 case: 你去到一家新公司,接手一个新项目。...那么,Kotlin 相对于 Java,在帮助我们了解“What”,在帮助 Reveals Intention 这方面,有什么样优势呢?...它值要么是在它定义地方就确定了,要么是在构造方法里面确定,你只需要检查两个地方就可以了,这对于代码理解,是一件极大减少工作事情。...因为是使用 final 定义变量,但是像上面的 mBaselineAlignedChildIndex 这个成员变量,是不能加 final ,因为它就是要可变啊,它就是需要在某些条件下被重新赋值

1.9K50

1024这天,故意写了个死循环~

导致CPU100%原因很多,而程序中出现死循环就是原因之一。然而,并不是每个人在工作中都有机会踩中这个坑。就是其中一个没踩过。人生似乎有些不完整。...所以,做了一个很重要决定:在程序中写一个死循环。看看会发生什么事情。 当然,不是在生产环境。? 搭建了一个实验环境做实验。只是这个实验环境不仅可以用于这个死循环实验。...我们会写一个简单Spring MVC 应用,然后其中一个接口里会有死循环代码: ? 以下是自己尝试找出这个死循环过程。...一定是某个知识点牢固,要不,不会有这个疑问。 二、堆空间 因为涉及JVM堆空间问题,执行 jstat -gcutil 32593 1s 没看出什么问题。...在日志中,找到相应线程,我们需要从栈日志中找到相应线程,但由于栈日志中使用16进制,但是top中PID又是10进制。所以,需要手工将10进制PID转成16进制。

45800

什么叫代码可读性?为什么说Kotlin可读性比Java好?

其实,如果一段代码需要你多读个两三遍才能很好理解,这本身不就说明,这段代码可读性不高吗?...这是一个很多人都会错误观点。 但是,在真正工作中,代码可读性,恐怕至这一个方面。为了考察所谓代码可读性涉及到哪些方面,我们假设两个case:1. 你去到一家新公司,接手一个新项目。...那么,Kotlin相对于Java,在帮助我们了解“What”,在帮助Reveals Intention这方面,有什么样优势呢?...因为在这行代码中,这个单词就已经表达出了这里做事情是“找出一些东西”,而大括号里面,就是找出条件。也就是说,Kotlin写法直接就帮我们表达出了“What”。...它值要么是在它定义地方就确定了,要么是在构造方法里面确定,你只需要检查两个地方就可以了,这对于代码理解,是一件极大减少工作事情。

1.1K70

从 React 历史长河里聊虚拟DOM及其价值

最近发现很多面试题里面都有「如何理解虚拟 DOM」这个题,觉得这个题应该没有想象中那么好答,因为很多人没有真正理解虚拟 DOM 它价值所在,这篇从虚拟 DOM 诞生过程引出它价值以及历史地位...,帮助你深入理解它。...所以就有了 Diff 过程,将数据变动前后 DOM 结构先进行比较,找出两者不同处,然后再对不同之处进行更新渲染。...换句话说,直接操作 DOM 性能并不会低于虚拟 DOM 和 Diff 算法,甚至还会优于。 这么说原因是因为 Diff 算法比较过程,比较是为了找出不同从而有的放矢更新页面。...框架意义在于为你掩盖底层 DOM 操作,让你用更声明式方式描述你目的,从而让你代码更容易维护。

85621

一文搞懂正则表达式

然而,注意到许多开发者对正则持有“复杂难记”观念,难以全面掌握这一强大工具,以至于每当在实际工作中遇到需要运用正则表达式情况时,往往不得不翻阅资料才能编写出合适正则。...正则表达式作为一种无比强大工具,无疑值得我们在开发过程中深入学习并熟练运用。它能帮助我们高效解决各类复杂问题,显著提升工作效率,从而让我们编程之旅更加得心应手,游刃有余。...案例实践我们回到今天开头提出问题也就是如何将文本中重复出现单词替换成单个单词。在这里我们可以分成两步操作,首先我们需要找出相关内容然后再对其进行替换。...那么除了工作中我们能使用到正则在生活中其实我们也可以用正则做一些非常有趣事情,这里引入一个案例比如说我们来用正则帮助我们下载电视剧。...然后我们单击右键审核元素或者检查,然后获取到每一集电视剧链接 html 代码,接下来通过找出规律我们就可以写出一个能匹配上所有电视剧网址这样正则,然后可以点击查找所有。

11610

精读文章:高级软件工程师成长秘诀

没有花费时间创建系统合适思维模型,这意味着设想与代码匹配,而这种匹配是大多数 bug 产生地方。 保护自己空闲,因此能够花时间优先学习东西而不是做东西。...它们是你已经完成工作单元,因此下次你不需要再做了。 理解层次也适用于你团队拥有的代码,而不仅仅是你复制粘贴代码,或者从其他人那里“继承”代码。...理想情况下,你应该对你团队代码有一个层次 2 理解,对你自己代码有个层次 3 理解。这种理解构建了代码如何工作 思维模型。 发现,代码审核对于构建这种思维模型有很大帮助。...当你理解了一个新系统代码,你找出他们做了哪些决定以及为什么这么做决定。这增加了你工作技能。这也是深入钻研 Unix 并 撰写关于 Unix 工作原理文章 一个重要原因。...喜欢找出其他人视角,并且尝试吸收没有的视角。这也是阅读技术博客另外一个原因。 在设计时,保留上下文也是值得,就像写代码时候一样。

37920

从高效数据科学家那里偷走15个习惯

适当维护文档 似乎总是很幸运能够阅读和处理具有糟糕文档代码,而没有支持注释帮助我了解到底发生了什么。 直到一天,意识到这只是一个糟糕程序员标志。...发现,当我最初编写解决数据科学问题代码时,通常会抛弃良好编码习惯,而编写在需要时可用代码。换句话说,写了很多没有结构代码。然后,在获得解决方案后,重新清理代码。...每当你发现有用内容时,请将其添加到这个备忘单中。 采用简约风格 ,不是生活。是在在你代码工作流程中。 经常有人争辩说,最好数据科学家使用最少代码,最少数据和最简单算法完成工作。...人们经常说,最好开发人员是懒惰开发人员,因为他们会找出如何创建不需要很多工作解决方案。在你写出解决方案后,请重新将多余或复杂代码写成函数,以帮助组织和简化代码。...这意味着在申请工作之前,你需要已经养成自我提高习惯。如今,每个人都因为合理原因在提高自身技能,这一趋势对数据科学家来说也例外。

33320

1024这天,故意写了个死循环~

作者:翟志军 来源:www.showme.codes 导致CPU100%原因很多,而程序中出现死循环就是原因之一。然而,并不是每个人在工作中都有机会踩中这个坑。就是其中一个没踩过。...所以,做了一个很重要决定:在程序中写一个死循环。看看会发生什么事情。 当然,不是在生产环境。? 搭建了一个实验环境做实验。只是这个实验环境不仅可以用于这个死循环实验。...我们会写一个简单Spring MVC 应用,然后其中一个接口里会有死循环代码: ? 以下是自己尝试找出这个死循环过程。...一定是某个知识点牢固,要不,不会有这个疑问。 二、堆空间 因为涉及JVM堆空间问题,执行 jstat -gcutil 32593 1s 没看出什么问题。...在日志中,找到相应线程,我们需要从栈日志中找到相应线程,但由于栈日志中使用16进制,但是top中PID又是10进制。所以,需要手工将10进制PID转成16进制。

75820

1024这天,故意写了个死循环

作者:翟志军 来源:www.showme.codes 导致CPU100%原因很多,而程序中出现死循环就是原因之一。然而,并不是每个人在工作中都有机会踩中这个坑。就是其中一个没踩过。...所以,做了一个很重要决定:在程序中写一个死循环。看看会发生什么事情。 当然,不是在生产环境。? 搭建了一个实验环境做实验。只是这个实验环境不仅可以用于这个死循环实验。...我们会写一个简单Spring MVC 应用,然后其中一个接口里会有死循环代码: ? 以下是自己尝试找出这个死循环过程。...一定是某个知识点牢固,要不,不会有这个疑问。 二、堆空间 因为涉及JVM堆空间问题,执行 jstat -gcutil 32593 1s 没看出什么问题。...在日志中,找到相应线程,我们需要从栈日志中找到相应线程,但由于栈日志中使用16进制,但是top中PID又是10进制。所以,需要手工将10进制PID转成16进制。

44320

面试中如何剔除“鱼目混珠”程序员?

下面是列出的如何过滤和筛选出不同编程技能问题,这主要有两个目的,一是为了给面试者热身,另外就是帮助主考官剔除不会编程“程序员”,那些SQL 专家尽然不会编写 JOIN 查询。...不需要说得多么精准,只是想看看他们有没有做过除了 two table inner join 之外更多东西。根据他们回答我会问他们古典SQL查询,以核实他们是否知道这样原理以及如何应用这些知识。...---- 在招聘 Java 或其他语言方面的多线程开发人员方面,筛选问题是要求候选人编写代码避免“僵局”出现。问这个问题时候可以提供一个特别的场景,或者问如何编写代码这样“僵局”就不会出现了。...---- 知道,和应聘者拉家常谈琐事并不是发现程序员好方法,但是你问出来问题和应聘者工作经历是息息相关,这可以帮助你区分谁有真才实学,谁只是虚张声势。...最好方法就是坐下来和他们面对面的交流,讨论他们之前做过项目,或者是和你结对编程证明自己实力。 询问他们之前工作中做值得他骄傲是什么,他们最想改变是什么,为什么要改变,怎么改变。

41320

用这10招,能减少了80%BUG

大家好,是苏三,又跟大家见面了。 前言 对于大部分程序员来说,主要工作时间是在开发和修复BUG。 有可能修改了一个BUG,会导致几个新BUG产生,不断循环。...那么,有没有办法能够减少BUG,保证代码质量,提升工作效率? 答案是肯定。 如果能做到,我们多出来时间,多摸点鱼,做点自己喜欢事情,香吗?...等插件扩展使用其他规则检验代码质量。...之前也参与多次代码review会议,发现代码review确实可以找出很多BUG。 比如:一些代码逻辑错误,语法问题,规范命名等。 这样问题通过组内代码review一般可以检查出来。...10 多看别人踩坑分享 如果你想减少日常工作代码BUG,或者线上事故,少犯错,少踩坑。 经常看别人真实踩坑分享,是一个非常不错选择,可以学到一些别人工作经验,帮助你少走很多弯路。

23210

PowerBI 2019年2月更新 - 暴露暗藏AI技术

PowerBI 在分析方面逐渐加强,继: 解释此增长 找出此分布不同之处 而后,本次更新提供了新分析功能,称为“关键影响因素”。...洞察功能可用于QA PowerBI 在数据洞察方面,引入了智能分析,包括: 1、解释此增长 2、找出此分布不同之处 现在这项功能可以用于QA: 很可惜,这只支持英文。...理解了这些,就可以看透PowerBI在不断补充某些能力,如: 1、解释此增长 2、找出此分布不同之处 关键影响因素也属于PowerBI“见解”(Insight)能力,这不过这项能力将更加智能,下面逐步解释...这是否算是暴露了黑科技,以及未来走向,上述代码可以在DAX Studio中运行,但却无法在PowerBIDAX编辑器中运行,看来默认用户编辑界面,微软暂时封锁了该功能,希望用户通过拖拽方式运行...,需要使用各种案例实践,上述案例仅仅用于解释,具有一定不合理性。

2.1K20

笨办法学 Python · 续 练习 11:`uniq`

完成出色工作目标还没有完成,但是你已经起步了 你还应该有一个不错实验笔记本,上面有运行图描绘出你改进效果如何。你图表并不是非常科学,但是他们应该帮助你了解什么有用,什么没用。...当你使用运行图时,你只需要在任一方向查找峰值,然后尝试为峰值找到“合理原因”。如果峰值是有利,那么试着找出原因并复现它。如果峰值是有害,那么试着找出原因并防范于未然。...当我说“峰值”时,意思是重大变化。运行图应该是波动。事实上,如果对于 45 分钟 Hack,它保持不变,那也是坏,你应该找出原因。...你sed命令需要正则表达式,这将去掉history命令头部。接下来用cut来抓取第一个单词作为命令名称。之后,通过uniq排序并执行它,并且你需要拥有所有你执行命令。...他们有帮助吗? 深入学习 研究 Python 图表库,看看你是否可以用 Python 生成这些运行图。你还应该开始跟踪你需要花费多长时间开始,看看运行图是否可以帮助你缩短所需时间。

43210
领券