3me 2020-03-21 21:06 采纳率: 100%
浏览 361
已采纳

学完C语言的基础知识以及数据结构之后自学python哪些必须要看哪些可以跳过?

本人学习C语言,已经学完C语言众多基本知识,比如函数,数组,指针,结构体;以及基本的数据结构,比如链表,栈,堆,树,图;虽然算法没有深入学,基本的算法还算了解。
想知道自学python的话有哪些基本知识是和C语言有明显区别,必须要看的,哪些知识是和C大致相似可以跳过的?

  • 写回答

3条回答 默认 最新

  • threenewbee 2020-03-21 22:03
    关注

    python里面有,而c语言里没有的东西多了。

    比如说元组,在c语言里交换两个数字

    int a = 1;
    int b = 2;
    int t = a;
    a = b;
    b = t;
    

    在python里

    a = 1
    b = 2
    a,b = b,a
    

    就可以了。

    再比如说,python虽然也是for循环,但是有else子句,比如

    for i in range(2, n-1):
      if n % i == 0: print("is prime")
    else:
      print("not prime")
    

    C语言就得写

    int exp = 0;
    for (int i = 2; i < n; i++)
    if (n % i == 0) { printf("is prime"); exp = 1; }
    if (exp) printf("not prime");
    

    就要多一个变量。

    再比如,python有切片:
    arr = [1,2,3,4,5]
    arr = list(a[:-1])
    这样就把arr变成[5,4,3,2,1]
    C语言要实现,就要自己循环

    python还有lambda表达式、装饰器、生成器……

    你的问题问得很糟糕,只是在逃避学习,这样无法领悟python的全部,建议你系统学一学。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog