小白编程--第三章 python语法&例子

概述

各主流语言的语法其实都类似,像java、C、python,无非就是基本数据类型、运算符、条件、分支、循环,高级语言就多点对象、重载等。本章主要介绍一下python的基本语法,再结合一个例子,把语法串一串。语言还是要多用才能够熟练,语法只需要到了解的程度就可以了,实践过程中,想不起来到网上查一下,一来二去就熟了。

基本数据类型

数据类型有整型int(整数,有正负)、浮点型float(小数,有正负)、字符串str(键盘上能够输入的英文字符、标点,比如小写字母a,对应的值是97,多个字符可以组合成字符串,比如'abc')。我们都知道,计算机中只有0和1,对于任何数据、变量,在计算机中体现出来的都是0和1(因为各种存储元件、电平都只有0、1两种状态),那么变量是怎么存储的呢? 以单个字符变量为例。

为了便于理解,认为字符型变量只有0和正整数,字符型变量的取值范围是0~255,一共是256种情况,内存中,每个存储单元的取值范围是0、1两种情况,以0为白色,1为绿色,一个存储单元的两种状态如下:

   

当存储单元为两个时,可以表示四种状态,分别是(0,0)(0,1)(1,0)(1,1),如下图所示:

       

当存储单元为四个时,可以表示2^4 = 16种状态,存储单元为八个时,可以表示2^8=256种状态,为了便于理解和运算,00表示0,01表示1,10表示2,11表示3。对于每位仅由0或者1组成,运算法则为逢二进一的数,称之为二进制,与十进制的逢十进一类似。比如二进制1+1=10,十进制1+1=2。对应二进制和十进制之间的转换方法:

二进制转十进制:1110 -> 0*(2^0)+1*(2^1)+1*(2^2)+1*(2^3)= 14

十进制转二进制:14转成二进制数:

1、十进制转二进制最终肯定是要转换成这种形式14= a*(2^0)+b*(2^1)+c*(2^2)+d*(2^3),因为14 < 2^4,所以2^4以上的就不用写出来了,肯定都是0。只要把这个方程解出来,就转换完成了。

2、解方程步骤:

1)提取后三项的公因子2,得到14=a+2*[b+c*(2^1)+d*(2^2)],a=14-2*[b+c*(2^1)+d*(2^2)]=2*{7-[b+c*(2^1)+d*(2^2)]},且2的取值是0或者1,显然a是个偶数,所以a是0。以此类推得到abcd的值。

总结起来,就是14对2求余,得到的商再对2求余......最后所有的余数串起来,就是一个二进制数。

所以,对于字符型的变量,是用八个存储单元来存储的,取值范围是0~255,每个存储单元称为位(bit),八个存储单元称为字节(byte)。整型变量占32位,取值范围是0~2^32-1。等等~

要是没看明白,就先跳过,知道变量能够存在内存中,并且CPU认识这个变量就可以了。接下来继续说python中变量的事情。

python的变量是不需要指定类型的,在使用过程中才会有具体的类型。比如,a = 10,b = 10.1,c = ‘x’,那么a是整型,b是浮点型,c是字符串类型。在python中可以查看各个变量的类型。代码如下:

a = 10
b = 10.1
c = 'x'

print('type of a is '+str(type(a)))
print('type of b is '+str(type(b)))
print('type of c is '+str(type(c)))

执行结果:


python基本语法

本章主要介绍条件语句和循环语句。

在处理现实问题过程中,经常会遇到类似”如果xxx就yyy“的情况,比如”如果收到的QQ消息是系统消息,就显示小喇叭的图标“。在python中,也有表达这个场景的语法,就是条件语句。

条件语句

条件语句的格式如下:

if 判断条件1:
    执行语句1……
elif 判断条件2:
    执行语句2……
elif 判断条件3:
    执行语句3……
else:
    执行语句4……

举例:

a = int(input("please input number a:"))

if a == 1:
	print(100)
elif a == 2:
	print(200)
else:
	print(300)

符号"=="表示比较,"a==1"表示比较a和1是否相等。这段代码的意思是,如果a和1相等,执行print(100),否则a和2相等的话执行print(200),否则执行print(300)。执行结果自己动手试试,不累述。


循环语句

还有另一种场景也很常见,需要重复做类似的事情时,就会用到循环语句。比如要打印出10名学生的成绩。循环语句有多种语法,下面介绍最简单的一种。

循环语句的格式:

for 序号 in range(起始序号,终止序号):
    执行语句1……

举例:

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

循环语句的range是前闭后开的,range(0,10)表示[0,10),包含0,不包含10。执行结果自己动手试试哈。。

综合举例

请设计一个地铁收费系统。场景&要求:

1、地铁有5个站点,A、B、C、D、E,起点站是A,终点站E

2、A到B要2元,B到C要3元,C到D要2元,D到E要5元;跨段的费用是每段费用的总和,比如A到C时2+3=5元

3、写一段程序,输入起始站和终点站,输出车费

4、要求要用循环和条件语句实现

各位看官先自己实现一下,下周分享代码~


这期拖了比较久,中间隔了个51,放飞了一段时间。下周继续周更~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值