本人学习C语言,已经学完C语言众多基本知识,比如函数,数组,指针,结构体;以及基本的数据结构,比如链表,栈,堆,树,图;虽然算法没有深入学,基本的算法还算了解。
想知道自学python的话有哪些基本知识是和C语言有明显区别,必须要看的,哪些知识是和C大致相似可以跳过的?
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的全部,建议你系统学一学。
python引入了对象设计,所有顺势学习吧。另外,它是脚本语言,解析执行的
python 更看重的是一个生态。有很多开源包可以直接引用,站在巨人肩膀上。c和数据结构是基础,这部分是相通的