在Python的CommandLine中输入:
【四大基本运算】
a1=100
a2=3
print( a1+a2 )
print ( a1-a2)
print ( a1 * a2)
print ( a1 / a2 )
#上面是加减,乘除 ,此行不用输入
你可以想像成a1变量是单元格a1,
a2变量是单元格a2
print ( (a1+2)* 3 - a2/3 )
print ( a1%3 + 20 - (a2-90) )
#上面是混合运算,此行不用输入
优先级用小括号包起来。
【运算顺序】
Python遵循正确的数学规则
a1=1+2+3+4+5+6+7+8+9+10
a2=1*2*3*4*5
#编程中叫做赋值,Excel中可以直接在单元格中输入,注意前面加一个等于号
print (a1)
print (a2)
【操作符】
+-*/ 这些符号都是操作符,=是赋值操作符,操作符所操作的东西称为操作数。
print ( a1**2)
print ( a1%3 )
#上面是乘方与求余,此行不用输入
在Excel中求余数需要使用函数mod,
它的原型是mod( number, divisor),带两个参数;
乘方用^(输入方法是按shift + 数字6 )
【字符串处理】
a1 = "book"
a1[0:1]
a1[0:4]
a1[0:3]
a1[0:2]
#文本即字符串,标号从0开始,结束是长度减1;如上面的
# a1: 0-3
a1 = "book"
a2 = "bag"
a1 + a2
a2 + a1
#字符串连接
a1 + a2 + a1
a2 + a1 + a2
字符串连接符在Excel中是 & (按shift再按数字7)
当然也可以使用函数concatenate( text1,text2,text3,……)
【数据类型转换】
a1= 38.809
a2= int ( a1 )
a3= int(a1) + 80.5
# 你可以所a1,a2,a3三个变量看成三个单元格
小数用int()变换成一个整数,它是向下取整。
a1 = "123"
a2 = 123
type ( a1 )
type ( a2 )
a3= int (a1)
type( a3 )
#注意两种类型的不一样
使用type( ) 查看变量的数据类型
a1 = "123"
b1 = 123
c1= "book"
d1 = int( c1)
#通过系统的提示信息,说说出错的原因
a1 = "123456"
a2 = 123456
len( a1 )
len( a2 )
#通过系统的提示信息,说说出错的原因
【逻辑的判断】
计算机做决策时,不论是Python还是Excel都需要做出检查(完成一个测试),查看某个条件是否为真,在下面的例子中,这个条件就是“答案正确”。
如果李四给出正确答案,就为他加1分;
如果Tom击中外星人,就发出爆炸的声音;
如果文件没有找到,就显示错误消息
比如上面的火车要完成的测试方法很有限,而且每个测试只有两种可能答案:真(True)、假(False)
a1 = True
a2 = True
a1 and a2
a1 or a2
not a1
not a2
#理解逻辑测试结果
a1 = True
a2 = False
a1 and a2
a1 or a2
not a1
not a2
#理解逻辑测试结果,注意大小写不要打错了
a1 = False
a2 = False
a1 and a2
a1 or a2
not a1
not a2
#理解逻辑测试结果,注意大小写不要打错了
比较操作符更容易记:
小于()和不等于(!=)。
(还可以使用 <> 表示不等于,不过大多数人都用 !=。)还可以把 > 或 < 与 = 结合起来表示大于或等于(>=)以及小于或等于(<=)。数学课上你可能已经见过这样一些符号。
a1=90
a1>80
a1>100
b1=10
b1<12
b1<9
#请理解上面的结果
a1=8
a1 != 0
a1 != 8
a1 >=8
a1<=8
a1>=0
a1<=16
#请理解上面的结果
复杂的逻辑可以表示复杂的输出,如下图有3个测试条件:
为了得到“Got at least 5!”
请找出得到这个结果的路径。
Python的逻辑是纵向的,Excel的逻辑是横向的。
if answer >= 10:
print "You got at least 10!"
elif answer >= 5:
print "You got at least 5!"
elif answer >= 3:
print "You got at least 3!"
else:
print "You got less than 3."
#Python的条件语句构造
在Excel中,它的实现是通过函数if( condition, true_part, false_part)
看上面某个同学手工制作表格:第一列为成绩数据,第二列为对应的成绩评定。
我们的操作方法:B列中单元格填充内容根据左侧A列中对应的单元格的实际值;
如A列的值大于等于60,填写“及格”,A列的值小于60,填写“不及格”。
手工制作这个表格无论在数据书写,修改,统计时都不太方便,我们可以使用Excel的强大功能来帮助我们。
流程图1
对应Excel函数书写
if( A1 >= 60 , "及格" , "不及格" )
#以B1单元格为例
流程图2
对应Excel函数书写
if( A1 < 60 , "不及格" , "及格" )
#以B1单元格为例
上面的Excel如果支持Python,我们可以这样写
if A1 >= 60:
B1="及格"
else:
B1="不及格"
#1
if A1 < 60:
B1="不及格"
else:
B1="及格"
#2
如果把成绩分成三档:
0-59:不及格
60-79:合格
80-100:优秀
我们应该如何用Excel来完成条件构造,并填写数据呢?
if( A1 >= 60 , if( A1 >= 80 , "优秀" , "合格" ) , "不及格" )
#以B1单元格为例
书写if嵌套时,可以遵循一定的规律:
if( A1 >= 60 , 待定 , "不及格" )
#以B1单元格为例
待定 = if( A1 >= 80 , "优秀" , "不及格" )
把上面1-2两项进行合并即可
if( A1 >= 60 , if( A1 >= 80 , "优秀" , "合格" ) , "不及格" )
#蓝色为第二步的内容代入
上面的Excel如果支持Python,我们可以这样写
if A1 >= 60:
if A1 >= 80:
B1="优秀"
else:
B1="合格"
else:
B1="不及格"
#二层嵌套
【考考你】
按下面的流程图表示(-1-,-2-,-3-)这三处应该填写什么内容?
相应的if函数如何写?
BTW
对Excel学习有什么疑问,欢迎大家在下面留言呀!
我们会用图文方式进行解答!