python跟c语言区别-Python快速入门之与C语言异同

原标题:Python快速入门之与C语言异同

代码较长,建议使用电脑阅读本文。

10分钟入门Python

本文中使用的是Python3如果你曾经学过C语言,阅读此文,相信你能迅速发现这两种语言的异同,达到快速入门的目的。下面将开始介绍它们的异同。

Python与C语言基本语法对比

Python使用空格来限制代码的作用域,相当于C语言的 {}。

第一个程序 Hello,World!

C语言

#includeint main(){ printf("Hello,World!");return0;}

Python

print("Hello,World!")

怎么样,是不是已经感受到Python的精巧了呢。

输入输出

C语言

#includeint main(){int number;floatdecimal;charstring[20]; scanf("%d",&number); scanf("%f",&decimal); scanf("%s",string); printf("%d ", number); printf("%f ",decimal); printf("%s ",string);return0;}

Python

number =int(input())decimal=float(input())string= input()print(number)print(decimal)print(string)

如果你尝试自己写一个Python循环输出语句,你肯定会发现Python的输出默认的换行的,如果不想让它换行,可给 end参数复制 "",例如

连续输出不换行

for i in range(0,10):print(i,end="")

代码注释

C语言

#includeint main(){// printf("注释一行");/** printf("注释多行"); printf("注释多行"); printf("注释多行"); printf("注释多行"); **/}

Python

# print("注释一行")# 三个单引号'''print("单引号注释多行")print("单引号注释多行")print("单引号注释多行")print("单引号注释多行")'''# 三个双引号"""print("双引号注释多行")print("双引号注释多行")print("双引号注释多行")print("双引号注释多行")"""

基本运算

C语言

#includeint main(){intResult;int a =10, b =20;// 加法Result= a + b; printf("%d ",Result);// 自加Result++;++Result; printf("%d ",Result);// 减法Result= b - a; printf("%d ",Result);// 自减Result--;--Result; printf("%d ",Result);// 乘法Result= a * b; printf("%d ",Result);Result*= a; printf("%d ",Result);// 除法Result= b / a; printf("%d ",Result);Result/= a; printf("%d ",Result);}

Python

a =10b =20# 加法result = a + bprint(result)# 减法result = a - bprint(result)# 乘法result = a * bprint(result)result *= a# 除法result = b / aprint(result)result /= aprint(result)

注意:Python没有自加,自减运算符,即 i++、 ++i、 i--、 --i,其他运算符基本与C语言相同。

判断语句

C语言

#includeint main(){int a =1, b =2, c =1;if(a == b){ printf("a == b");}elseif(a == c){ printf("a == c");}else{ printf("error");}}

Python

a =1b =2c =1if a == b:print("a == b")elif a == c:print("a == c")else:print("error")

elif相当于 elseif,其他用法与C语言相同。

循环语句

while循环

C语言

#includeint main(){int a =0, b =10;while(a < b){ a++;} printf("%d", a);}

Python

a =0b =10while a < b: a+=1else:print(a)

for循环

C语言

#includeint main(){for(int i =0; i <10; i++){ printf("%d ", i);}}

Python

for i in range(0,10):print(i)

range(0,10)表示创建一个在[0, 10)区间的整数列表,相当于C语言for循环中的 i<10条件

函数

C语言

#includeintfunction(char name[],int age,float weight){ printf("Name:%s ", name); printf("Age:%d ", age); printf("Weight:%f ", weight);return1;}int main(){char name[20];int age;float weight; printf("请输入名字:"); scanf("%s", name); printf("请输入年龄:"); scanf("%d",&age); printf("请输入体重:"); scanf("%f",&weight);if(function(name, age, weight)==1){ printf("执行完毕");}}

Python

#!/usr/bin/env python# _*_coding:utf-8_*_deffunction(name, age, weight):print("Name:"+ name)print("Age:", age)print("Weight", weight)return1if __name__ =="__main__": name = input("请输入名字:")s age = input("请输入年龄:") weight = input("请输入体重:")if(function(name=name, age=age, weight=weight)==1):print("执行完毕")

注意代码的作用域,缩减相同表达的意思与C语言的 {}相同。

导入头文件

C语言

#include#includefloat make_sqrt(float numA,float numB,float numC){float sum = sqrt(numA + numB + numC);return sum;}int main(){float a, b, c, result; scanf("%f %f %f",&a,&b,&c); result = make_sqrt(a, b, c); printf("%f", result);return0;}

Python

#!/usr/bin/env python# _*_coding:utf-8_*_import cmathimport cmath as mtfrom cmath import sqrtdef make_sqrt_sum(numA, numB, numC): sum1 = cmath.sqrt(numA + numB + numC) sum2 = mt.sqrt(numA + numB + numC) sum3 = sqrt(numA + numB + numC)return sum1, sum2, sum3;if __name__ =="__main__": a, b, c = map(float, input().split()) result1, result2, result3 = make_sqrt_sum(a, b, c)print(result1, result2, result3)

导入模块importcmathimportcmathasmtfromcmathimportsqrt第一种方法是直接导入 cmath库(sqrt模块包含在该库中), 第二种方法是导入后给它起个别名(后面使用的使用不用敲那么长的名字了), 第三种方法是直接导入 cmath库中的 sqrt模块(我们只用到了这个模块)。

数组

Python的数组相当灵活,这里直接介绍Python类似数组的组件,及其常用操作。

列表

列表中每个存储的每个元素可以是不同的类型,例如整数、小数、字符串等。列表中可以实现元素的添加、修改、删除操作,元素的值可以被修改。

peopleList =["eye","mouth","nose","brow","ear",1.80,120]print(peopleList)# 输出整个列表print(peopleList[0])# 访问索引为0的元素peopleList[1]="head"# 修改索引为1的元素peopleList.append("arm")# 在列表末尾添加元素peopleList.insert(1,"foot")# 在列表中插入元素del peopleList[0]# 删除索引位置的元素result = peopleList.pop(0)# 删除并引用索引位置的元素,先复制给result再从列表中删除peopleList.remove("nose")# 根据值来删除元素

元组

元组与列表类似,不同的是,它的元素初始化后不能再修改。但可以通过重新给变量赋值操作,达到修改元素的目的。

# 元组peopleTuple =("eye","mouth","nose","brow","ear",1.80,120)print(peopleTuple)peopleTuple =("eye","mouth","nose","brow","head",6.6,999)# 重新给变量赋值来达到修改元素的目的

字典

字典是由 键-值对组成的集合,可通过键名对值进行操作。

peopleDict ={"e":"eye","m":"mouth","n":"nose","b":"brow","h":1.80,"w":120}print(peopleDict)print(peopleDict["e"])# 访问peopleDict["a"]="arm"# 添加键-值对peopleDict["w"]=190# 修改键-值对del peopleDict["a"]# 删除键-值对

最后

Python博大精深,要想学好建议还是认真研读一本书。http://www.aibbt.com/a/22237.html返回搜狐,查看更多

责任编辑:

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值