对任何语言来说,变量和数据类型都是非常重要和基础的内容。这篇文章就带你用10分钟的时间,学会Python的变量和数据类型这个知识点。
一、知识点
python关键字
变量的定义与赋值
input()函数
字符串的格式化
二、实验步骤
每一种编程语言都有它们自己的语法规则,就像我们所说的外语
2.1关键字和标识符
下列的标识符是Python3的关键字,并且不能用于通常的标识符。关键字必须完全按照下面拼写:
FalsedefifraiseNonedelimportreturnTrueelifintryandelseiswhileasexceptlambdawithassertfinallynonlocalyieldbreakfornotclassfromorcontinueglobalpass
这些内容可以在Python3解释器中得到:
在Python中我们不需要为变量指定数据类型。所以你可以直接写出
abc=1
,这样变量
abc
就是整数类型。如果你写出
abc=1.0
,那么变量
abc
就是浮点类型。
a=13b=23a+b36
通过上面的例子你应该理解了如何在Python中定义变量,也就是只需要输入变量名和值就行了。Python也能操作字符串,它们用单引号或双引号括起来,就像下面这样。
ShiYanLouShiYanLouShiYanLou\sbestShiYanLousbestHelloWorld!HelloWorld!
2.2从键盘读取输入
通常情况下,Python的代码中是不需要从键盘读取输入的。不过我们还是可以在Python中使用函数
input()
来做到这一点,
input()
有一个用于打印在屏幕上的可选字符串参数,返回用户输入的字符串。
我们来写一个程序,它将会从键盘读取一个数字并且检查这个数字是否小于。这个程序名称是testhundred.py。还记得如何使用vim吗?忘了的话可以看看下面的动图:
#!/usr/bin/envpython3number=int(input(Enteraninteger:))ifnumber=:print(Yournumberissmallerthanequalto)else:print(Yournumberisgreaterthan)
如果
number
小于,输出“Yournumberissmallerthan”,如果大于,输出“Yournumberisgreaterthan”。
程序运行起来就像这样:(运行时别忘记给文件添加可执行权限,如何添加权限请回想上节实验内容,程序运行时若报错权限不够,为文件添加权限即可)
$./testhundred.pyEnteraninteger:13Yournumberissmallerthan$./testhundred.pyEnteraninteger:Yournumberisgreaterthan
下一个程序我们来计算投资:
#!/usr/bin/envpython3amount=float(input(Enteramount:))#输入数额inrate=float(input(EnterInterestrate:))#输入利率period=int(input(Enterperiod:))#输入期限value=0year=1whileyear=period:value=amount+(inrate*amount)print(Year{}Rs.{:.2f}.format(year,value))amount=valueyear=year+1
运行程序:
$./investment.pyEnteramount:00EnterInterestrate:0.14Enterperiod:5Year1Rs..00Year2Rs..00Year3Rs..44Year4Rs..60Year5Rs..15
whileyear=period:
的意思是,当
year
的值小于等于
period
的值时,下面的语句将会一直循环执行下去,直到
year
大于
period
时停止循环。
Year{}Rs.{:.2f}.format(year,value)
称为字符串格式化,大括号和其中的字符会被替换成传入
str.format()
的参数,也即
year
和
value
。其中
{:.2f}
的意思是替换为2位精度的浮点数。
2.3一些例子
一些关于变量和数据类型的例子。
2.3.1.求N个数字的平均值
下面的程序用来求N个数字的平均值。
#!/usr/bin/envpython3N=10sum=0count=0print(pleaseinput10number:)whilecountN:number=float(input())sum=sum+numbercount=count+1average=sum/Nprint(N={},Sum={}.format(N,sum))print(Average={:.2f}.format(average))
运行程序:
$./averagen.py1.23.43....5N=10,Sum=65.2Average=6.52
2.3.2.温度转换
在下面的程序里,我们使用公式C=(F-32)/1.8将华氏温度转为摄氏温度。
#!/usr/bin/envpython3fahrenheit=0print(FahrenheitCelsius)whilefahrenheit=:celsius=(fahrenheit-32)/1.8#转换为摄氏度print({:5d}{:7.2f}.format(fahrenheit,celsius))fahrenheit=fahrenheit+25
{:5d}
的意思是替换为5个字符宽度的整数,宽度不足则使用空格填充。
运行程序:
$./temperature.pyFahrenheitCelsius0-17.-3...8937......22121.11
2.4单行定义多个变量或赋值
你甚至可以在一行内将多个值赋值给多个变量。
a,b=45,54a45b54
这个技巧用来交换两个数的值非常方便。
a,b=b,aa54b45
要明白这是怎么工作的,你需要学习元组(*tuple*)这个数据类型。我们是用逗号创建元组。在赋值语句的右边我们创建了一个元组,我们称这为元组封装(*tuplepacking*),赋值语句的左边我们则做的是元组拆封(*tupleunpacking*)。
下面是另一个元组拆封的例子:
data=(shiyanlou,China,Python)name,country,language=datanameshiyanloucountryChinalanguagePython
三、总结
完成这个实验我们应该了解python关键字有哪些(在这里不要求全部记住),如何赋值变量,怎样从键盘读取输入,以及字符串的格式化,