Python快速入门之与C语言异同
代码较长,建议使用电脑阅读本文。
10分钟入门Python
本文中使用的是Python3如果你曾经学过C语言,阅读此文,相信你能迅速发现这两种语言的异同,达到快速入门的目的。下面将开始介绍它们的异同。
Python与C语言基本语法对比
Python使用空格来限制代码的作用域,相当于C语言的 {}。
第一个程序 Hello,World!
C语言
#include<stdio.h>int main(){printf("Hello,World!");return 0;}
Python
print("Hello,World!")
怎么样,是不是已经感受到Python的精巧了呢。
输入输出
C语言
#include<stdio.h>int main(){int number;float decimal;char string[20];scanf("%d", &number);scanf("%f", &decimal);scanf("%s", string);printf("%d\n", number);printf("%f\n", decimal);printf("%s\n", string);return 0;}
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语言
#include<stdio.h>int main(){// printf("注释一行");/**printf("注释多行");printf("注释多行");printf("注释多行");printf("注释多行");**/}
Python
# print("注释一行")# 三个单引号'''print("单引号注释多行")print("单引号注释多行")print("单引号注释多行")print("单引号注释多行")'''# 三个双引号"""print("双引号注释多行")print("双引号注释多行")print("双引号注释多行")print("双引号注释多行")"""
基本运算
C语言
#include<stdio.h>int main(){int Result;int a = 10, b = 20;// 加法Result = a + b;printf("%d\n", Result);// 自加Result++;++Result ;printf("%d\n", Result);// 减法Result = b - a;printf("%d\n", Result);// 自减Result--;--Result;printf("%d\n", Result);// 乘法Result = a * b;printf("%d\n", Result);Result *= a;printf("%d\n", Result);// 除法Result = b / a;printf("%d\n", Result);Result /= a;printf("%d\n", 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语言
#include<stdio.h>int main(){int a = 1, b = 2, c = 1;if(a == b){printf("a == b");}else if(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语言
#include<stdio.h>int 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语言
#include<stdio.h>int main(){for(int i = 0; i < 10; i++){printf("%d\n", i);}}
Python
for i in range(0, 10):print(i)
range(0,10)表示创建一个在[0, 10)区间的整数列表,相当于C语言for循环中的i<10条件
函数
C语言
#include<stdio.h>int function(char name[], int age, float weight){printf("Name:%s\n", name);printf("Age:%d\n", age);printf("Weight:%f\n", weight);return 1;}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_*_def function(name, age, weight):print("Name:" + name)print("Age:", age)print("Weight", weight)return 1if __name__ == "__main__":name = input("请输入名字:")sage = input("请输入年龄:")weight = input("请输入体重:")if (function(name=name, age=age, weight=weight) == 1):print("执行完毕")
注意代码的作用域,缩减相同表达的意思与C语言的
{}相同。
导入头文件
C语言
#include<stdio.h>#include<math.h>float 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);return 0;}
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
Python快速入门之与C语言异同的更多相关文章
- Python快速入门
Python快速入门 一.基础概要 命名:h.py Linux命令行运行:python h.py 注释.数字.字符串: 基本类型只有数字与字符串 #python注释是这样写的 ''' 当然也可以这样 ...
- Python快速入门PDF高清完整版免费下载|百度云盘
百度云盘:Python快速入门PDF高清完整版免费下载 提取码:w5y8 内容简介 这是一本Python快速入门书,基于Python 3.6编写.本书分为4部分,第一部分讲解Python的基础知识,对 ...
- python快速入门及进阶
python快速入门及进阶 by 小强
- Python与C语言基础对比(Python快速入门)
代码较长,建议使用电脑阅读本文. 10分钟入门Python 本文中使用的是Python3 如果你曾经学过C语言,阅读此文,相信你能迅速发现这两种语言的异同,达到快速入门的目的.下面将开始介绍它们的异同 ...
- 1、Python快速入门(0529)
学习来自马哥教育的视频,感谢马哥 编程语言: 用户: 问题空间 计算机:解决问题 解空间 抽象: 机器代码-->微码编程-->高级语言 (语言的高下级的是根据语言是否被人类容易理解或者更接 ...
- python快速入门——进入数据挖掘你该有的基础知识
这篇文章是用来总结python中重要的语法,通过这些了解你可以快速了解一段python代码的含义 Python 的基础语法来带你快速入门 Python 语言.如果你想对 Python 有全面的了解请关 ...
- Python快速入门教程【转】
第一章 Python基础知识 1.1 介绍 1.1.1 特点 Python是一种面向对象.解释型计算机程序设计语言.语法简洁清晰,强制用空白符作为语句缩进. Python ...
- 一、python快速入门(每个知识点后包含练习)
1. 编程与编程语言 编程的目的是什么? #计算机的发明,是为了用机器取代/解放人力,而编程的目的则是将人类的思想流程按照某种能够被计算机识别的表达方式传递给计算机,从而达到让计算机能够像人脑/电脑一 ...
- 第02章 Python快速入门
007.快速入门,边学边用 008.变量类型 print(type(变量)) 查看变量的了类型 现在常用的变量的类型有整型.浮点型.字符型 009.List基础模块 类型转换:str(8 ...
随机推荐
- hdu5296 01字典树
根据二进制建一棵01字典树,每个节点的答案等于左节点0的个数 * 右节点1的个数 * 2,遍历整棵树就能得到答案. AC代码: #include<cstdio> using namespa ...
- uploadify上传文件(2)--基础语法
隔了好久,因为最近搬家,离开从小生活的城市,来到杭州.找工作.找房子等诸多事宜耽误了这篇文章许久.今天难得闲暇在旅馆中完成uploadify上传文件系列的第二篇--uploadify使用的基础语法. ...
- Python中if __name__=="__main__" 语句在调用多进程Process过程中的作用分析
2018年2月27日 于创B515 引言 最近准备学习一下如何使用Python中的多进程.在翻看相关书籍.网上资料时发现所有代码都含有if __name__=="__main__" ...
- python导入模块
1.模块的定义: 模块定义:用来逻辑上组织python代码(变量.函数.类.逻辑:目的是:实现一个功能),本质就是.py结尾的python文件. 补充: 包的定义:用来从逻辑组织模块的,本质就是一个目 ...
- 如何在模拟器里体验微软HoloLens
众所周知,微软的HoloLens以及MR设备售价都比较高,这让不少感兴趣的朋友们望而却步,本篇教程将向大家介绍如何在模拟器里体验传说中的HoloLens. 1.需要准备的硬件: 智能手机一台(WP.A ...
- NLP+词法系列(一)︱中文分词技术小结、几大分词引擎的介绍与比较
笔者想说:觉得英文与中文分词有很大的区别,毕竟中文的表达方式跟英语有很大区别,而且语言组合形式丰富,如果把国外的内容强行搬过来用,不一样是最好的.所以这边看到有几家大牛都在中文分词以及NLP上越走越远 ...
- 慢慢来写SpringMVC基本项目
首先新建一个maven项目. 这里选用webapp的.在点击next弹出的界面的groupID和artifactID自己定义憋.好了,这个第一步完成.创建完可能会有个红叉在项目上, 这个只需要在pom ...
- linux内核initrd文件自定义方法
linux内核initrd文件自定义方法 重新编译内核后,可能加入了自定义的模块,就有可能需要修改init文件,而init文件就在initrd中,这里记录下操作步骤,以防遗忘. 1. cp /bo ...
- HighCharts之2D带Label的折线图
HighCharts之2D带Label的折线图 1.HighCharts之2D带Label的折线图源码 LineLabel.html: <!DOCTYPE html> <html&g ...
- return *this 与return this的区别
return *this返回当前对象的引用(也就是返回当前对象) return this返回当前对象的地址. #include <iostream> using namespace std ...