#2.2_编写一个简单的程序
项目1:
设计:radius=20,求面积area?
程序:
radius=20 #给变量radius复制
area=radius*radius*3.14159 #编写area的表达式,给area赋值
print(area) #输出area的值,area的值是1256.636
print("The area for the circle of radius",radius,"is",area)
#在双引号内的文字是直接被读取的,不用双引号包含住的变量会读取它的值,则可以得到上面这条的函数得到的结果是
#The area for the circle of radius 20 is 1256.636
得到的结果:
检查点 2.1:
print(item1,item2,...,itemk),倘若某项是一个数字或者是一个表达式,但表达式的结果是一个数值,那得到的结果在该项的位置显示的就不是表达式,而是数值
程序:
width=5.5 #给width赋值
height=2 #给height赋值
print("area is",width*height) #显示area is 11.0(width*height的结果)
结果:
area is 11.0
检查点2.2
程序:
miles=100 #给miles赋值
kilometers=miles*1.609 #给变量kilometers赋值,或者说赋予表达式
print(kilometers) #显示kilometers的值
结果:
160.9
#2.3_从控制台读取输入
#从控制台读取输入可以让程序员从用户处接受输入
程序1:
variable=input("Enter value:") #运行时,在控制台可以出现一个输入处,输入radius的值
print(variable) #回车上面的输入以后,就会得到结果
结果:
输入值
得到结果
程序2:
#eval()函数可以把()里面的字符串求值并且转换成一个数值
variable=eval(input("Enter a value for radius:")) #输入radius值的入口
area=radius*radius*3.14159 #area字符串
print("The area for the circle of radius",radius,"is",area)
结果:
输入值:
得到结果:
程序3:
s=input("Enter a value for radius:") #在控制台输入口输入radius,并且赋值于s
radius=eval(s) #转换s的数为数值(这里本来就是数值),并且把这个数值命名为radius读取
print(radius*2) #显示radius*2的值
结果:
控制台输入radius:
得到结果:
程序4
number1=eval(input("Enter the frist number:"))
number2=eval(input("Enter the second number:"))
number3=eval(input("ENter the third number:"))
average=(number1+number2+number3)/3
print("The average of",number1,number2,number3,"is",average)
#分别在控制台输入数字1,数字2,数字3,再求平均值
结果:
程序5:#当一列没有写完的时候,需要换行到下一行去继续写,为了告诉
sum=1+2+3+4+\
5+6 #加入\,指示pyhton下一列继续上一列的内容
print(sum) #显示sum的值
结果:
#2.4_标识符
标识符条件:
1.由字母,数字和下划线(_)构成的字符序列
2.以字母和下划线开头,不能以数字开头
3.标识符不能是关键字(xx函数的都是算是,比如import,sum.......)
4.比如多个单词一起的时候,第一个单词小写,第二第三,第n个的首字母大写,不如numberOfStudents
#2.5 变量、赋值语句 #右边的值,左边的是变量,把右边的值赋值给左边的变量上面
程序1:
count=1 #创建count,并且赋值
count=count+1 #定义count的表达式
#2.6_同时赋值
1. var1,var2,.....,varn=exp1,exp2,...,expn #右边的值赋值到左边的变量上
程序1:假如有x,y两个变量,写代码交换两个变量的值
方法1:
x=1
y=2
temp=x
x=y
y=temp #以x做为中间变量去实现交换
方法2:
x=1
y=2
x,y=y,x #直接交换x,y的值
print(x,y)
程序清单:同时赋值在同一个语句中获取多个输入
number1,number2,number3=eval(input("Enter three numbers separated by commas:"))
#同时赋值给一条语句中的多个变量
average=(number1+number2+number3)/3
print("The average of",number1,number2,number3,"is",average)
结果:
得到第一条语句,输入三个值,分别用括号括住,然后再次运行
#2.7_定名常量
#定义某个值为变量,是为了之后能够方便表达,一般定义的变量,都是用大写字母表示
程序1:
radius=20
PI=3.14159 #定义PI,以便之后的输入
area=radius*radius*PI
print("The area for the circle of radius",radius,"is",area)
结果:
#2.8 数值数据类型和运算符
1.数值类型:实数型和整数型
整数型:用Integer(简写为int)表示整数,2是整数
实数型:用于表示有小数部分的数字,表示为浮点数,比如1.1和2.0都是实数型
2.字面量:可以直接出现在程序中的常量值,比如像1.0、1这些数字都成为字面量
3.运算符号:+、-、*、/、//、%、**
操作数:被运算符号操作的值
运算符号+、-可以用于一元运算也可以是二元运算,一元运算有一个操作数,而二元运算符有两个操作数。比如,-5的-是一元的,表示5的相反数,而4-5是二元的,表示4减去5。?????
#2.81_运算符/、//和**
程序1:
print(4/2) #在spyder输入 4/2 是不会跑出来什么的
结果:
2.0
#但是在我电脑上的python IDLD输入4/2 得到的结果是2,输入2/4得到的结果是0,自动取整了
程序2: # //是表示除法,结果取整
print(5//2)
结果:
2
程序2: #书本是直接2.3**3.5表示的是次方,2.3^3.5
a=2.3**3.5
print(a)
结果
18.45216910555504
#2.82_运算符% # %是求余数或者取整的运算符 #
程序1:
seconds=eval(input("Enter an integer for seconds:")) #读取一个整数,并且赋值为seconds(秒)
minutes =seconds//60 # seconds//60得到分钟数,//取整
remainingSeconds=seconds % 60 # %除法取余数,获得除法取整之后得到的余数,就是秒数(xx分xx秒的那个秒)
print(seconds,"seconds is",minutes,"minutes and",remainingSeconds,"seconds")
结果:
#2.83 科学记数法
1.2456*10^2用1.23456E+2表示
1.23456*10^(-2)用1.23456E-2表示
#2.9 计算表达式和运算符优先级 #python表达式和算术表达式一样(符号优先级也是)
**>*>/除法、//取整、%取余>+、-
#2.10 增强型赋值运算符 #运算符+、-、*、/、%、/、//、**可以与运算符=组合在一起构成简捷运算符
案例1: 循环赋值时候count=count+1 ----相当于count += 1 # +=被成为加分赋值运算,注意,+=之间是没有空格的,还有其他的运算符也是类似
#2.11 类型转换和四舍五入
# int()返回浮点值的整数部分
# round()对()里面的值四舍五入返回转入最近的整数值
程序1:
程序2:# round()函数四舍五入返回最近的整数
程序3:# int(" ") 用于将于字符串转变成整数,但它不能用于非整数型的字符串,例如:Int("3.4")将出错。
# eval()函数可以用来计算
eval("3+4")返回7 #注意要用上双引号
程序3:
purchaseAmount = eval(input("Enter purchase amount:"))
tax = purchaseAmount * 0.6
print("Sales tax is",int(tax*100)/100.0)
结果:输入purchase
# 2.12_实例研究:显示当前时间
currentTime=eval(input("Enter an integer for time:")) #定义现在的时间为curretTime
totalSeconds=int(currentTime) #总秒数等于现在的时间取整
currentSecond=totalSeconds%60 #现在的秒数等于现在秒数除以60的余数
totalMinutes=totalSeconds//60 #总分数等于总描述除以的整数部分
currentMinute=totalMinutes%60 #现在的分数等于总分数除以60的余数部分
totalHours = totalMinutes//60 #总的小时数等于总分数除以60的整数部分
currentHour =totalHours%24 #现在的小时数等于总时数除以34的余数部分
print("Curret time is",currentHour,":",currentMinute,":",currentSecond,"GMT")
结果: #秒数输入1235(自定义)