程序员

python程序员告诉你,python怎么学?13个特性带你快速了解python

蹲街弑〆低调 提交于 2019-11-28 04:19:43
如果你是一个正在学习python的c、c++或者java程序员,或者你是刚开始学python,那么看完这13个语言特性,你会觉得非常实用。 每个语言特性只能通过实例来验证,无需过多解释。虽然我已尽力使例子清晰,但它们中的一些仍会看起来有些复杂,这取决于你的熟悉程度。所以如果看过例子后还不清楚的话,标题能够提供足够的信息让你通过Google获取详细的内容。 正文 1、分拆 当你要传递的参数已经是一个列表,调用的函数却接受分开一个个的参数,这个时候可以考虑参数列表拆分: 2、 交换变量分拆 3、负索引 非常直观,以元素1为第0个元素,最后一个元素即为a[-1],有点循环链表的意思。 在学习过程中有什么不懂得可以加我的 python学习交流扣扣qun,784758214 群里有不错的学习视频教程、开发工具与电子书籍。 与你分享python企业当下人才需求及怎么从零基础学习好python,和学习什么内容 4、列表切片 (a[start:end]) 5、 使用负索引的列表切片 6、 带步进值的列表切片 (a[start🔚step]) 7、负步进值得列表切片 8、列表切片赋值 9、命名切片 (slice(start, end, step)) 10、zip打包解包列表和倍数 11、 使用zip合并相邻的列表项 12、使用zip和iterators生成滑动窗口 (n -grams) 13、

JZOJ 3515 软件公司

試著忘記壹切 提交于 2019-11-28 04:08:28
题目描述: 一家软件开发公司有两个项目,并且这两个项目都由相同数量的m个子项目组成,对于同一个项目,每个子项目都是相互独立且工作量相当的,并且一个项目必须在m个子项目全部完成后才算整个项目完成。 这家公司有n名程序员分配给这两个项目,每个子项目必须由一名程序员一次完成,多名程序员可以同时做同一个项目中的不同子项目。 求最小的时间T使得公司能在T时间内完成两个项目。 题目大意: 有两个任务,每个任务都有m个子任务,每个人做子任务的时间分别为a[i],b[i],求一种分配使完成这两个任务的时间最短 输入: 第一行两个正整数n,m(1<=n<=100,1<=m<=100)。 接下来n行,每行包含两个整数,x和y。分别表示每个程序员完成第一个项目的子程序的时间,和完成第二个项目子程序的时间。每个子程序耗时也不超过100。 输出: 输出最小的时间T。 样例输入: 3 20 1 1 2 4 1 6 样例输出: 18 题目解法: 对于30%的数据,二分查找并判断可能性 对于100%的数据,二分答案再做一次DP 设f[i][j]表示前i个人,共完成j个1项目,2项目最多能完成的个数,转移为: 来源: https://www.cnblogs.com/zhouyifei/p/11391266.html

你为什么千万不要重写代码(转)

老子叫甜甜 提交于 2019-11-28 03:03:48
偶然看到此文,可以提醒自己不要把原来代码推倒重来的心(ps、我真的想推倒重来= =) 原文见: https://kb.cnblogs.com/page/525836/ 程序员都有一颗工程师的心,所以当他们到一片新的场地想做的第一件事就是,将旧的一切推倒重来。是的,他们决不会满足于简单的增量劳动。   或许这种微妙的心理定位可以解释:为什么程序员进入新项目组后宁愿丢掉旧代码重新写,也不愿意修修补补。他们认为旧代码简直一团糟。   但是,事实上真是这样吗?你之所以认为旧代码一团糟,其实是由编程的一个基本定律决定的,那就是:写代码容易,读代码难。   为什么你觉得旧代码异常混乱?因为读代码更难。   这大概就是代码Reuse难以实现的原因。 这就是你组里的每个人都喜欢用不同的功能将分割的字符串转换成一个数组。比起猜测旧的功能是怎样实现的,重新写一个自己的功能要简单和有趣多了。   作为这个公理的推论,你可以问问身边的程序员他们正在奋战的代码怎么样?「简直是一塌糊涂!」他们肯定会这样说。「我简直想推倒重来!」   为什么认为代码这么糟糕呢?「额,看看这个功能,竟然有两页长!完全不知道这些东西为什么在这里!完全不知道这些API是干什么的。」他们会这样回答你。   曾经,Borland的创始人 Philippe Kahn 当初就是向记者们吹嘘:Quattro Pro会比Microsoft

为什么程序员在学习编程的时候什么都记不住?

帅比萌擦擦* 提交于 2019-11-28 02:59:01
在程序员的职业生涯中,记住所有你接触过的代码是一件不可能的事情!那么我们该如何解决这一问题? 作者 | Dylan Mestyanek 译者 | 弯月,责编 | 屠敏 出品 | CSDN(ID:CSDNnews) 以下为译文: 每个人都会在学习编程语言的时候,努力记住所有一切,这也不足为奇。虽然有些人可以过目不忘,直接在脑海里就能想出问题的解决方案,但普通人却不能。特别是那些刚开始学习和探索编程世界的人,比如我自己。 我逐渐了解到,记住所有你接触过的代码是一件不可能的事情! 那么问题来了:我们该怎么解决这个问题呢? 要明白你能做什么,而不是记住怎么做 其实,代码可以构建的功能有无数种可能性!你可以设想通过代码构建任何内容,只有你想不到的,没有构建不了的。学习一种新语言是一件非常令人激动的事情。查看问题以及代码示例,并通过这些示例学习如何利用这种语言以及/新概念完成工作,这都非常重要,但我们无法记住所有的信息,不要做无谓的尝试!你可以在今后需要实现的时候,再反过来查看,刚开始的时候,你只需要记住这种概念可以实现什么样的功能。 在我深入研究React.js时,这种方式给予了我的学业很大帮助。实现的可能性太多了,你有无数种方式传递props、创建新state、组合组件——实在太多了!就像一个大谜团! 我了解到React可以实现非常多的功能,虽然我无法确切告诉你该如何做

程序员必备几款软件(实用、开源)

£可爱£侵袭症+ 提交于 2019-11-28 02:58:02
文章目录 Notepad++ (包含多种语言语法的文本编辑器) 软件介绍 下载链接 软件特点 tiny c compiler(tcc编译器) 软件介绍 下载链接 主要特色 使用介绍 Typora(全能工具箱Markdown编辑器) 软件介绍 下载地址: 常用的简单操作 ==Typora快捷键整合== Notepad++ (包含多种语言语法的文本编辑器) 软件介绍 程序员必备的文本编辑器,软件小巧高效,支持27种编程语言,兼容C,C++ ,Java ,C#, XML, HTML , PHP,JS 等, Notepad++ 可完美地取代微软的记事本。 下载链接 http://www.188soft.com/soft/906144.html 软件特点 这是 Windows 记事本一个最好的替换产品,优于Windows记事本的一个文本编辑器,完全免费且开源,对于不同的编程语言可以实现语法高亮,代码折叠以及宏,起可定制性非常强。 主要特点包括: 自动完成 语法高亮 拖放特性 搜索 缩放 tiny c compiler(tcc编译器) 软件介绍 tiny c compiler又称tcc编辑器,是一款小巧好用的编程工具,具有操作简单,编译速度快的特点,支持最新的C语言国际标准,无需与其它外部的汇编器连接就可以进行编译操作。 其编译速度要比lua快很多,使用tcc的最大好处就是可以把不变的代

Unix传奇(下篇)

风流意气都作罢 提交于 2019-11-28 02:35:08
http://hi.baidu.com/hieda/blog/item/7c1b35c20957d639e5dd3bea.html Unix传奇(下篇) Unix是目前还在存活的操作系统的元老了,走过了40年的历程(参看《 Unix 40年:Unix年鉴 》、《 Unix 40年:昨天,今天和明天 》)。由它引发的思想变革,对当今计算机文化造成的深远影响。这是一段所有从事计算机行业人员尤其是软件开发人员需要了解的历史。Unix的传奇历史是整个计算机世界文化最具代表性的,它对整个计算机世界文化的影响也是最巨大,最深远的。他给人带来的不单单的对过去的回味,更为我们带来了计算机世界的新思潮。 下篇 Unix与黑客文化 Unix的历史教训 Unix 家族谱 Unix的特点 Unix的影响和哲学 Unix痛恨者手册 上篇 Unix起源 Unix分裂 Unix的法律纠纷 GNU开源组织 Linux横空出世 Linux今天的领袖 Unix与黑客文化 黑客的文化和Unix的商业化存在着必然的联系。自从Unix出现,黑客文化就与之而来。 1993初,一个悲观的观察家撰文指出,已经有理由认为Unix的传奇故事连同他带有黑客文明将一同破产。许多人预测,从那时起Unix将在六月内死亡。他们很清楚,十年的Unix商业化,使自由跨平台的Unix梦以失败告终。Unix允诺的跨平台可移植性

让程序员崩溃的瞬间(非程序员勿入)

久未见 提交于 2019-11-28 02:24:04
今天给大家带来点快乐,程序员才能看懂。 来源:https://zhuanlan.zhihu.com/p/47066521 1. 公司实习生找 Bug 2. 在调试时,将断点设置在错误的位置 3. 当我有一个很棒的调试想法时 4. 偶然间看到自己多年前写的代码 5. 当我第一次启动我的单元测试时 6. 数据库的 Delete 语句忘了使用限定词 where... 7. 明明是个小 bug,但就是死活修不好...... 8. 当我尝试调整生产数据库中的一些东西时 9. 好像真的没人发现我产品里的 bug...... 10. 下班前我还有一项任务没有完成 11. 产品还没测试直接投入生产时 12. 调试过多线程的都会懂! 13. 当我以为已捕获了所有可能的异常...的时候 14. 当我试图清理几行所谓的旧代码的时候 15. 当有人让我帮他调试代码时 16. 当程序员第一次向老板演示项目时 17. 结对编程,需要再了解一下吗? 18. 当你看到你几个月没碰过的代码 19. 接到产品经理电话的我睡意全无! 20. 测试的时候一切 ok,真正上线的时候…… 21. 作为一个程序员,拷问灵魂的时刻到了! 22. 当年学 C 语言的过程 23. 当前端程序员想改后台代码时,后台程序员的样子 24. 调试 bug 25. 正在调试,突然内存溢出了 26. 需求文档又改了 27. 苦逼的后端工程师

全球最厉害的 14 位程序员!

不打扰是莪最后的温柔 提交于 2019-11-28 02:13:59
来源 | ITWorld 整理自网络 全球最厉害的 14 位程序员是谁?今天就让我们一起来了解一下吧,排名不分先后。 01. Jon Skeet 个人名望:程序技术问答网站 Stack Overflow 总排名第一的大神,每月的问答量保持在 425 个左右。 个人简介 / 主要荣誉:谷歌软件工程师,代表作有《深入理解 C#(C# In Depth)》。 网络上对 Jon Skeet 的评价: “他根本不需要调试器,只要他盯一下代码,错误之处自会原形毕露。” “如果他的代码没有通过编译的时候,编译器就会道歉。” “他根本不需要什么编程规范,他的代码就是编程规范。” 02. Gennady Korotkevich 个人声望:编程大赛神童 个人简介 / 主要荣誉: 年仅 11 岁时便参加国际信息学奥林比克竞赛,创造了最年轻选手的记录。在 2007-2012 年间,总共取得 6 枚奥赛金牌;2013 年美国计算机协会编程比赛冠军队成员;2014 年 Facebook 黑客杯冠军得主。截止目前,稳居俄编程网站 Codeforces 声望第一的宝座,在 TopCoder 算法竞赛中暂列榜眼位置。 网络上对 Gennady Korotkevich 的评价: “一个编程神童。” “他太令人惊讶了,他相当于我在白俄罗斯建立了一支强大的编程队伍。” “彻底的编程天才。” 03. Linus

程序员真是太太太太太有趣了!!!

只愿长相守 提交于 2019-11-28 02:13:30
点击上方 “ 程序员小明 ”, 选择“星标” 今晚可以不加班! 网络上虽然已经有了很多关于程序员的话题,但大部分人对这个群体还是很陌生。 我们在谈论程序员的时候,究竟该聊些什么呢? 各位程序员大佬们,请让我听到你们的声音!不管你是前端开发、后端研发、测试开发、移动端开发、全栈工程师、运维工程师、网络工程师、架构师、研发经理还是其他职位,不管你在做Android开发 、iOS开发、U3D 、COCOS2DX、 自动化测试、功能测试、性能测试、白盒测试、灰盒测试、黑盒测试、ETL、数据仓库、数据开发、数据挖掘、数据分析、数据架构、算法研究、精准推荐、分布式、系统集成、地图引擎、人工智能、大数据、深度学习、机器学习、图像处理、图像识别、语音识别、语音学习、机器视觉、自然语言处理、视频开发、区块链还是其它技术支持。欢迎在评论中踊跃发表意见! 最后和程序员身边的朋友们嘱咐一句,就算程序员的工位再乱,也不要帮他整理。 否则,当心会毁灭世界哦~ 作者:狗哥,一个幽默的理工男青年,愿做你身边最有趣的朋友。 公众号:有趣青年(ID:v_danshen) 长按二维码关注小明 今晚可以不加班! 来源: CSDN 作者: coder小明 链接: https://blog.csdn.net/x851288986/article/details/102455899

Python是什么?

主宰稳场 提交于 2019-11-28 02:12:45
Python是一种编程语言,它的名字来源于一个喜剧。也许最初设计Python这种语言的人并没有想到今天Python会在工业和科研上获得如此广泛的使用。著名的自由软件作者Eric Raymond在他的文章《如何成为一名黑客》中,将Python列为黑客应当学习的四种编程语言之一,并建议人们从Python开始学习编程。这的确是一个中肯的建议,对于那些从来没有学习过编程或者并非计算机专业的编程学习者而言,Python是最好的选择之一。Python第一次学习Python,我只用了不到二十分钟的时间,站在书店里把一本教初学编程的人学习Python的书翻了一遍。也是从那时起,我开始被这种神奇的语言吸引。 Python可以用来开发symbian上的东西。 易用与速度的完美结合Python是一种用起来很方便的语言,很多初学Java的人都会被Java的CLASSPATH搞得晕头转向,花上半天的时间才搞明白原来是CLASSPATH搞错了自己的Hello World才没法运行。用Python就不会有这种问题,只要装上就能直接用。 Python是一种脚本语言,写好了就可以直接运行,省去了编译链接的麻烦,对于需要多动手实践的初学者而言,也就是少了出错的机会。而且Python还有一种交互的方式,如果是一段简单的小程序,连编辑器都可以省了,直接敲进去就能运行。Python是一种清晰的语言