从C到Python,,基本输入与输出输出C
从C到Python,,基本输入与输出输出C
基本输入与输出
输出
C: printf(“Hello World\n”);
P: print(“Hello World\n”)
简单的字符串输出对于printf()/print()函数来说,C和Python差别貌似不大,细心的读者可能会发现,在Python中一条语句后面并没有分号,事实确实如此,在Python中,一般一行一条语句,如果写两条,你需要加上 ; 隔开,但一般没有人会去那么做,想一想在C中有多少次都是因为忘添分号导致编译出错的,所以在Python中,忘了分号吧。
但是复杂一点的格式输出,比如打印一定精度的数字或者字符串两者就不一样了
C:
#include<stdio.h>int main(){int a=1;float b =1.0;char str[10]="abc";printf("a=%d\tb=%.3f\tstr=%s",a,b,str) ;return 0;}
123456789结果应该为a=1 b=1.000 str=abc
P:
b = 1.0str="abc"print ("a=%d\tb=%f\tstr=%s" % (a, b,str))print(‘a={}\tb={}\tstr={}‘.format(a, b,str))
12345结果为
a=1 b=1.000000 str=abca=1 b=1.0 str=abcPython中也有类似C语言中的格式输出,就是把逗号换成%,把变量用圆括号包围起来。除此之外,还有format方法。
Python中format方法所做的事情便是将每个参数值替换至格式所在的位置。在Python3中数有四种类型:int、float、bool、complex,int表示为长整型,没有python2 中的 Long,也没有char类型。
正如你所看到的那样,Python中的变量不需要声明,但每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。这一点与c不同,其他诸如转义序列\n\t…都差不多。还有一点,在Python中print()函数 默认是以换行符作为结束值的,C语言中printf()函数结束需要手动换行。如果在Python中不想换行,可以在说完正事后添上end = “ “,注意用逗号隔开就行。如:
print(‘a={}\tb={}\tstr={}‘.format(a,b,str),end =‘‘)print(‘a={}\tb={}\tstr={}‘.format(a,b,str),end =‘‘)
12结果为 a=1 b=1.0 str=abca=1 b=1.0 str=abc
输入
C:
#include<stdio.h>int main() { int a=0; float b=0; char str[10]; printf("请输入三个数据,输入的三个数据将会分别赋值给a,b,str, 用逗号隔开\n"); scanf( "%d%f%s",&a,&b,str); printf( "%d\t%f\t%s\t ",a,b,str); return 0; }
1234567891011121314运行结果为:
请输入三个数据,输入的三个数据将会分别赋值给a,b,str, 用逗号隔开 输入 :1 2.0 gg 输出 : 1 2.000000 ggP:
a,b,str=input("请输入三个数据,输入的三个数据将会分别赋值给a,b,str, 用逗号隔开\n").split()print(‘a={}\tb={}\tstr={}‘.format(a,b,str),end =‘ ‘)
1234运行结果为:
请输入三个数据,输入的三个数据将会分别赋值给a,b,str, 用逗号隔开输入 :test1 test2.0 22输出: a=test1 b=test2.0 str=22input()函数用于从用户那里获得一些文本,有一个用来提示用户输入信息的字符串参数,在C语言中,要想实现同样的功能,需要printf()。当然input只能接受一个值,要想输入多个,用 input().split(),前面就可以加任意多的数据了。
值得注意的是:input返回的是字符串,虽然看着是数字,但其实是字符串,需要int(input())来进行转化,如果输入的不是数字而是字符串,这个转换就会报错,在与用户输入打交道的地方,要注意检查类型是否匹配,可以用Try语句,后面再说。
控制流语句
在Python中有三种控制流语 句—— if for和while,下面比较其与C语言中的区别
If
C
#include <stdio.h> int main() { int a=0; printf("请输入一个数字\n"); scanf("%d",&a); if(a==0) { printf("a =0"); } else if(a>0) { printf("a>0"); } else if(a<0) { printf("a>0"); } else printf("a不是数字 "); return 0; }
1234567891011121314151617181920212223p
a=int(input("请输入一个数字\n"))if a==0: print("a =0") elif a>0: print("a>0") else: print("a<0 ")
12345678910运行结果一样
请输入一个数字23333a>0 条C中:条件语句后面要用括号包含条件,把条件成立时的语句块用花括弧{}围起来,Python中 if 语句后直接接条件再添加冒号,条件成立时执行的语句块保持缩进一致,一般缩进四个空格或者一个制表符。
但是一定要记住,Python使用缩进级别来告诉编译器哪些语句分别属于哪个 块。如果同一语句块中缩进不一致,程序结果可能和预想的结果不一样甚至直接报错,这便是没有用花括弧{}所带来的弊端。
至于else if()简写成elif, Python中不存在switch语句。你可以通过使用if..elif..else语句来实现同样的事 情。
while
while语句在条件为真的前提下重复执行某块语句
C:
#include <stdio.h> int main() { int a=233,b; bool flag=1; printf("猜猜a等于多少,随便输入一个数字\n"); scanf("%d",&b); while(flag) { if(a==b) { printf("猜对了\n"); flag=0; } else { if(a>b) { printf("有点小了\n"); } else { printf("有点大了\n"); } printf("继续猜: "); scanf("%d",&b); } } return 0; }
12345678910111213141516171819202122232425262728293031P:
a=233flag=1b=int(input("猜猜a等于多少,随便输入一个数字\n"))while flag: if a==b: print("猜对了") flag=0 else: if a>b: print("有点小了") else: print("有点大了") b=int(input("继续猜")) else: print(‘游戏结束.‘)
12345678910111213141516结果如下
猜猜a等于多少, 随便输入一个数字 2 有点小了
继续猜3 有点小了
继续猜255 有点大了
继续猜233 猜对了 游戏结束.
while在C和Python中,区别在于判断条件的括号()换成冒号:,花括弧{}换成缩进就行了,另外,Python中while可以和else配合使用,else代码块在while 循环的条件变为False时开始执行,也可以不用else语句。其他用法差异不大。
for
C:
#include <stdio.h> int main() { int i; for(i=0;i<10;i++) { printf("%d\t",i); } return 0; }
12345678910P:
for i in range(0,10,1): print(i,"\t",end="")
123输出结果如下
0 1 2 3 4 5 6 7 8 9Range()函数的第一个参数指定了起始位置,第二个参数限定了范围,第三个参数时步长。range()每次会生成一个数字.
In 运算符 如果在指定的序列中找到值返回 True,否则返回 False,因此也可以用在其他条件语句中,测试实例中包含了一系列的成员,包括字符串,列表或元组。至于什么是列表或这元组,后面介绍。
Python 中的for和与C中的for同Python中的while与C中的while相差不多,都是把C中的括弧()转为冒号:,把循环体的{}换为一致的缩进即可。
喜欢的朋友可以加QQ群,群内有免费资料供大家一起交流学习
从C到Python
相关内容
- python实现一个简单的网络聊天程序,,一、Linux So
- Python之路,之路,Python之路第一
- Python——文件操作,python文件读取,1. 文件操作基础(
- 8个用Python进行机器学习建模项目的实用建议,让新手小
- Python用HTMLTestRunner生成html测试报告,生成测试报告,小编
- python文件操作,python文本分析和提取,使用open函数可以
- python的数字图像处理学习(1),,导入原有的测试图片
- Python绘制五星红旗,什么的五星红旗,# -*- codi
- 如何让你的Python代码更加pythonic ?,怎样让代码高亮显
- python学习--quote()函数,,屏蔽特殊的字符、比如
评论关闭