×

Loading...

Topic

  • 工作学习 / 学科技术 / 不懂就问: 为何 Python 和一些语言, 把字符串的 index 设计的这么麻烦难用? 比如 ABCDE, index is 01234 from left or -5-4-3-2-1 from right? 这样做的好处是什么? 还有 left inclusive but right exclusive… 真复杂啊
    • 怎么难用了?比以前C和Java好用多了。有什么具体的难用的例子?还是和什么其它语言和应用比较?
      • SQL is easy and simple…. 此外,不同类型的数据,使用不同的 null values, nan ,NaN, NaT etc ,复杂a
        • 同意 “SQL is easy and simple”。原因是SQL是 declarative programming 语言,而Python和其它大部分语言是 imperative programming 语言。declarative 好用,但是domain 有限,大多数通用语言是 imperative 的。
          • 就像翻译? 翻译如同女人一样,漂亮的不忠实,忠实的不漂亮? 鱼与熊掌不可兼得
            • 没有这么玄。Python这样的指令性语言,你需要给出一步一步的指令去解决问题。而声明性语言,只需要把问题描述清楚,系统会解决问题,更像是AI解决问题。
              • “低级”与“高级”的区别。在编程方面,“高级”就是“傻瓜”的意思
    • 这都是小事,python把特别复杂难处理的东西都简单化了,代码量小多了,所以成为现代编程的首选语言
      • 还是好麻烦 再简单一些才好
        • 你要的是AI ,编程语言就是英文,甚至中文。
        • 第一道小河,躺过去就感觉编程真容易
    • 你这问题不在编程语言,而在没有编程的思维,这也是现在孩子们要自己整明白的,没有这个思考方式的转变,写不了代码的,感觉和你说的类似,似乎看懂了,但又觉得复杂 +1
    • Python Index 不复杂,负号可以代表反方向, 因为-0 没意思,所以从-1 开始。Left inclusive ,right inclusive对应数学中的符号[ ].可以把它理解为Python 为了方便解决数学上的问题而产生的语言 +2
    • 数组的index 从0 开始是计算机的一个传统。 +2
      估计源于对存储器地址的编码。二进制第一个数字,不管几位,都是从0000,0001,0010,开始。数组的index 从0 开始的好处是,循环的终止条件写成 < count。如果index 从 1 开始,终止条件要写成 <= count。计算机发展初期,硬件价格是计算的主要瓶颈。所以,第一代计算机从业人员,对算法的简洁有着病态化的追求。
      • 嗯,记得当年学第一门语言BASIC时,定义数组的编号就是从0开始的,那算是很早的高级语言了吧....
      • Finally finally You answered my question. Thanks a lot
    • 用关键句:“数组为什么从0开始”放一下狗狗,结果会叼来N多答案!其实说的都差不多