本文准备通过几个实例来讨论python中的一些基础语法,包括基本数据类型,python语法规则,定义变量,循环,条件判断等.并将这些特性与c语言做个简单比较(本文代码都是基于python3,)
例1:求出1-100的和。
首先给出实现代码
i=0 sum=0 while i<=100: sum+=i i+=1 print(sum)
下面逐行分析该段代码:
第一行定义了一个变量i,并把i赋初值0,这里需要注意两点,第一个是我们并没有声明变量i的类型,在c语言中,我们要定义一个变量,必须要声明变量类型。结合下文的代码,我们可以知道i在这里相当于c语言中的int类型。第二点,在i=0一行的代码后面,并没有c语言中常见的行分隔符“;”在c语言中,一行结束,必须在后面加上“;”来表示一行的结尾,而在python中则不需要。所以第一行用c语言来描述,则需要写成:int i=0;这是python与c的第一大区别。
第二行的代码与第一行一样,因此调至第三行。第三行至第五行是一个while代码块。代码块的意思就是这几行相当于一条语句。在c语言中,要表示while代码块,需要用while(表达式){...}的格式来表示,而在python中,则是while 表达式:...来表示。在python中,没有{}符号,代之的是:和缩进。在while(for,if)后面的:号不可缺失,“:”表示下面的内容是一个代码块。
第四行第五行是while循环的内容,它们与第三行是一个整体,在python中,用缩进来表示某几行代码是否属于一个代码块。需要注意,在python中是严格要求缩进的,如果某几行是属于同一个代码块的内容,那么,这些行必须缩进相同的空格,比如第四行和第五行,因为都属于while代码块,因此他们的缩进空格数必须相同,如果第四行缩进了4个空格,第五行缩进了3个空格,就会报错。因此在python中一定要注意每一行的缩进问题。为了避免此问题,一般使用tab键控制缩进。而在c语言中,因为有{}标志代码块,因此对缩进就没有什么要求,更多的是为了使代码看上去更美观。
在第四行和第五行中还需要注意一点:sum+=i等价于sum=sum+i;这个和c语言是一致的,但是第五行的i+=1却不能像c语言那样写做i++.这是因为在python中,是不支持自增自减运算的。
最后一行是python的输出语句print语句。使用该语句,即可将内容输出到设备上。其作用类似于c语言中的printf语句,不过比printf语句简单许多,只要把需要输出的语句放进括号即可。
通过第一个例子总结以下几点:
1.python中定义变量是不需要声明变量类型的,在python中没有诸如int,double,char等数据类型,python会根据变量值和操作进行自动判断变量类型.。
2.python中一行代码结束,不需要“;”分隔,而在c中则是需要的。
3.whil循环(for,if,函数)的循环体没有{},python是借助“:”标识while循环(for,if,函数)
4.python严格要求缩进,因为python没有{}来控制代码逻辑,因此借助严格的缩进来控制代码逻辑,建议使用tab进行缩进控制。
5.pyhon中没有自增运算符(++)和自减运算符(--)。
例2:使用while循环输出1 2 3 4 5 6 8 9 10
首先附上代码:
1 i=1 2 while i<=3: 3 print("请输入用户名:") 4 InUser=input(">>>") 5 print("请输入密码:") 6 InPasswd=input() 7 if InUser=="hahh" and InPasswd=='123aaa': 8 print("登录成功") 9 break; 10 elif InUser=="hahh" and InPasswd !='123aaa': 11 print("密码错误,请重试") 12 else: 13 print("用户名或密码错误,请重试") 14 i=i+1
下面逐行分析该代码:
1-3行跳过,从第四行开始。第四行出现了input(">>>")函数,该函数表示用户从键盘输入数据。其中input中的参数是一个提示符,该参数可以为空。因此第6行的input参数是为空的。第7行是一个if语句,if语句的代码风格和while类似,都是用“:”标识。需要注意,在python中没有&&操作符和||操作符,代之以and和or关键字。除了代码风格,if语句的用法和语法规则同c语言中if用法一致
第9行break表示退出循环,该关键字和 continue关键字是控制循环的常用关键字,其作用和c语言中的break,continue关键字一直,break表示终止循环,continue表示跳过此次循环。
总结:
1.python中没有&&和||操作符,代之的是and 和or
2.if使用规则同c语言一致
3.break和continue关键字