mke*_*y33 3 c# python asp.net django programming-languages
我是Python新手,来自C#背景,我正在努力加快速度.我知道Python是动态类型的,而C#是强类型的. - >看评论.在尝试学习Python时,我应该注意哪些概念障碍?是否存在Python中不存在模拟的概念?面向对象分析有多重要?
我相信这些以及你可能能想到的任何其他问题的答案会加速我对除了耐克心态("只做它")之外的Python的理解吗?
更多上下文:我的公司正在从ASP.NET C#Web Forms迁移到Django.我已经阅读了Django教程,这真的很棒.我需要在大约2周的时间内加速(可笑吗?LOL)
感谢大家花时间和精力回答一个真实的问题.
"我知道Python是动态类型的,而C#是强类型的."
这是奇怪的错误.
Python是强类型的.列表或整数或字典始终是给定类型.对象的类型无法更改.
Python变量不是强类型的.实际上,Python变量只是对象上的标签.变量未声明; 因此将Python描述为"动态".
C#是静态类型的.变量被声明为编译器的特定类型.代码是基于运行时使用的变量的某些知识生成的.
Python被"解释" - 事情是在运行时完成的 - 很少被假设.[从技术上讲,Python源代码被编译成字节代码并解释字节代码.有些人认为这是一个重要的区别.]
编译C# - 编译器根据声明的假设生成代码.
在尝试学习Python时,我应该注意哪些概念障碍?
没有.如果你坚持认为Python 应该是其他的东西; 或者你坚持认为其他东西更直观,那么你用不恰当的概念污染了自己的思想.
没有编程语言有障碍.当我们将语言强加于语言时,我们会遇到自己的障碍.
是否存在Python中不存在模拟的概念?
由于Python具有面向对象,过程和功能元素,因此您很难找到Python中缺少的东西.
面向对象分析有多重要?
面向对象分析有助于软件开发的所有阶段 - 即使您没有进行OO实施.这与Python无关,应该是一个单独的问题.
我需要在大约2周的时间内加速(可能是荒谬的?)
也许不是.如果你从一个新的,开放的思想开始,那么Python可以在一周左右的勤奋工作中学习.
另一方面,如果将Python与C#进行比较和对比,可能需要数年才能超越C#偏差并学习Python.不要将C#翻译成Python.不要将Python翻译成C#.
不要带满满的水桶去井里.