大三狗,想要大四找到一线城市工作,主要方向是linux下编程,有linux c编程经验,最近一直在纠结是学c++还是python,请求各位解答,小弟拜谢…
回复内容:
有等答案的功夫python就学完了。 基本上只要是靠谱的公司都不是看你现在会什么语言才要你的。基本上找工作的时候也别抱着『我会XXX』就妄想这辈子只靠这个语言工作。 两个都学,并且还要学Python的C API。这样就可以任意互相调了。 28原则吧 80%精力学习c++ 20精力学习一门脚本语言
主要看楼主以后方向吧 如果是网络安全python肯定需要 如果是游戏可以先学lua
光学习语言是不行的 多看看优秀的源码的 openresty skynet stl
对于python可以先过书 几天搞定一个高级话题 如装饰器 迭代器 协程 元类
学一门学累了 看看csapp 算法导论 挺好 要完成一些成规模的项目,软件架构与性能都必不可少。C++正是为此而生,在尽量不牺牲性能的情况下,提供高层次抽象所需的功能。毕竟C所缺少的命名空间、高级数据结构等,使其完成大规模项目是有一定困难的。
不过C++并不是解决该问题的唯一方案。很多其他方案并不专注于同时确保两点,而是将目标集中于更好的软件架构,以及可以接受的性能。Python、Lua等很多语言都是如此。而同时,对于要求性能较高的部分,或者与系统结合紧密的部分,则是交给C模块去处理。这样的思路对大型项目是很有利的,架构方面因为有高级语言的支持而得到了更好的抽象,更容易实现复杂的逻辑。而循环次数较多的部分则交给C去处理。尤其是引入高级语言后,可以迫使人们将传递的数据交给高级语言,而不是C里随处使用全局变量。
所以,以实用的角度讲,Python+C是更好的选择。另外就是C++为了寻求性能与架构的折中而不得不引入很多概念,这些概念使得C++比C要复杂很多,同时其对架构的支持能力却又比高级语言查一截。
总的来说,我的建议是:
1. 学Python,反正很快
2. 学好C,结合具体的系统与函数库
3. 学Python与C结合的方法,比如Python的C模块、Cython、Swig等多种方式
4. 学一点C++语法,毕竟还是有一定概率会用到C++的库,但不要在那些奇怪的C++功能上浪费时间 语言有什么用处?不依附平台、需求和project,语言没有任何价值。
所以不要纠结什么c++、ruby、python、php之类的该如何选,要看你的职业规划、看你的需求和项目。 由c++入python易,由python入c++难 “人生苦短,我用Python”。不过,不要浮躁。
---------------------------------------------------------
语言只是做事的方法,你要专注于要做的事情本身。你应该根据实际需要选择合适的技术去学习。如果是想做网站后台,做爬虫,做系统管理……肯定python更好。如果想做游戏,做操作系统级编程,显然c++好很多。
而且,python和c++并非水火不容。两者都是c语言系的,基本语法差别不大,而且在python中的关键部分可以嵌入c/c++/java程序片段。没记错的话,python也被称作一种“胶水语言”。
-----------------------------------------------------------
从笔记本上摘几句相关的话供参考:
- 『你不应该“嫁”给任何特定的技术,而应该有足够宽的技术背景和经验基础,使自己能针对特定的情景选择好的解决方案。』——《程序员修炼之道》
- 『我永远不会用自己的技术来定位自己,而是用我已经做过的和我将要做的事情来定位自己。技术只是一种做事的方法。』
- 『软件开发界有很多这样肤浅的专业人士,这些人以“专业人士”为借口,只知道一门技术。』——《The Passionate Programmer》
- 『身为合格的程序员,扎实的基础+快速学习能力才是你最可靠的武器。至于何种技术,别担心,不过又是一种微风。』
- 『程序员就是程序员,写得出程序就是程序员。程序员不要在自己脑门上加太多修饰,什么C++程序员,什么Java程序员,什么Windows程序员,什么Linux程序员,这些加了修饰的程序员,其实不容易存活的。』
- 『学编程有点像修炼,心静神宁可以让学习更有效率,浮躁要不得。……不要贪多嚼不烂,一定要精于某一方面。』
- 『学以致用』
- 『学习是一辈子的事,不用着急。』
C和C++都有“开发人员过多精力放在人机对话上”的问题,而python好一些,代码逻辑密度更大,OO也比C++更容易。 语言不是女朋友,你可以有两个的~

Python列表切片的基本语法是list[start:stop:step]。1.start是包含的第一个元素索引,2.stop是排除的第一个元素索引,3.step决定元素之间的步长。切片不仅用于提取数据,还可以修改和反转列表。

ListSoutPerformarRaysin:1)DynamicsizicsizingandFrequentInsertions/删除,2)储存的二聚体和3)MemoryFeliceFiceForceforseforsparsedata,butmayhaveslightperformancecostsinclentoperations。

toConvertapythonarraytoalist,usEthelist()constructororageneratorexpression.1)intimpthearraymoduleandcreateanArray.2)USELIST(ARR)或[XFORXINARR] to ConconverTittoalist,请考虑performorefformanceandmemoryfformanceandmemoryfformienceforlargedAtasetset。

choosearraysoverlistsinpythonforbetterperformanceandmemoryfliceSpecificScenarios.1)largenumericaldatasets:arraysreducememoryusage.2)绩效 - 临界杂货:arraysoffersoffersOffersOffersOffersPoostSfoostSforsssfortasssfortaskslikeappensearch orearch.3)testessenforcety:arraysenforce:arraysenforc

在Python中,可以使用for循环、enumerate和列表推导式遍历列表;在Java中,可以使用传统for循环和增强for循环遍历数组。1.Python列表遍历方法包括:for循环、enumerate和列表推导式。2.Java数组遍历方法包括:传统for循环和增强for循环。

本文讨论了Python版本3.10中介绍的新“匹配”语句,该语句与其他语言相同。它增强了代码的可读性,并为传统的if-elif-el提供了性能优势

Python中的功能注释将元数据添加到函数中,以进行类型检查,文档和IDE支持。它们增强了代码的可读性,维护,并且在API开发,数据科学和图书馆创建中至关重要。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

WebStorm Mac版
好用的JavaScript开发工具

MinGW - 适用于 Windows 的极简 GNU
这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。