if语句
if语句的作用:
让程序根据条件选择性的执行某条语句或者某些语句
语法:
if 真值表达式1:
语句块1...(语句块前面需要4个字符缩近)
elif 真值表达式2:
语句块2...
elif 真值表达式3:
语句块3
...
else:
语句块4
说明:elif 子句可以有0个,1个或多个
else 子句可以有0个或1个,且只能放在if语句的最后
示例见:if.py
练习:
任意输入一个整数
1)判断这个数是否大于100
2)判断这个数是否小与0
3)判断这个数是否在50-150之间
(建议每一步用一个if语句来实现)
if_elif.py示例
练习:
1、输入一个季度1~4输出这个季度有那几个月份,
如果输入的不是1~4的整数,提示用户您输错了
2、输入一年中的月份(1~12),输入这个月在那几个季度,
如果输入的是其他的数,则提示您输错了
if语句的嵌套
if 语句本身是由多条子句组成的一条复合语句
if 语句可以作为语句嵌套到另一个复合语句的内部
示例见:if embed.py
条件表达式
语法:
表达式1 if 真值表达式 else 表达式2
(先执行if后面的真值表达式,如果成立则执行表达式1,如果不成立则执行表达式2)
作用:
根据真值表达式的取值(True/False)来决定执行表达式1或者表达式2并返回结果
示例见:if_express.py
练习:
1,写一个程序,输入一个数,用if语句计算出这个数的绝对值并打印出来
2,写一个程序,输入一个数,用条件表达式计算出这个数的绝对值并打印出来
pass 语句
作用:
通常用来填充语句语法空白
pass又名空语句
语法:
pass
示例见:pass.py
布尔运算:
运算符:
not--非
and--与
or --或
布尔非操作 not
语法
not x
作用
对x进行布尔取非,如bool(x)为True,则返回False,否则为True
布尔与操作 and
语法
x and y
注:x,y代表表达式
作用
优先返回假值对象,当x的布尔值为False时,返回x,否则返回y
示例
True1 and True2 # True2
True and False # False
False and True # False
False and False # False
100 and 0.0 # 0.0
0 and 0.0 # 0
布尔或操作 or
语法
x or y
作用
优先返回真值对象,当x为True时返回x,否则返回y
示例
True or True # True
True or False # True
False or True # True
False1 or False2# False2
3.14 or 100 # 3.14
0 or 0.0 # 0.0
正负号运算符
+(正号) -(负号)
注:一元运算符(一个元素参加运算)
语法
+ 表达式
- 表达式
示例
a = 5
b = -a
c = +a
print(a,b,c) # 5 -5 5
字符串 str
作用
用来记录文字(文本)信息
表示方法:
在非注释中凡是用引号括起来的部分都是字符串
‘ 单引号
“ 双引号
’‘’ 三单引号
“”“ 三双引号
空字符串的字面值表达方式
‘’ “” ‘’‘’‘’ “”“”“”
非空字符串的字面值的表达方式
‘hello’ "hello" '''hello''' """hello"""
单引号和双引号的区别
单引号内的双引号不算结束符
双引号内的单引号不算结束符
示例见:str.py
三引号字符串的作用:
三引号字符串可以包含单引号和双引号
三引号字符串中的换行会自动转换为换行符‘\n’
示例见str.py
隐式字符串字面值拼接
示例
s = "I'm a teacher" 'my name is "wei"'
print(s)
用转移序列代表特殊字符
字符串字面值中用字符反斜杠\后跟一些字符代表特殊的一个字符,如:
转字格式 含义
\' 代表一个单引号
\" 代表一个双引号
\\ 代表一个反斜杠
\n 代表换行
\r 返回光标至行首 print("ABCD\rab") # abCD
\f 换页
\t 水平制表符
\v 垂直制表符
\b 倒退 print(“ABCD\ba”) # ABCa
\0 空字符(字符值为0)
\0oo oo为两个八进制表示的字符
\xxx XX为两位十六进制表示的字符
\uXXXX 四位十六进制表示的Unicode 16字符
\UXXXXXXXX 八位十六进制表示的Unicode 32字符
ASCII编码表
$ man ascii <回车>
常用的ASCII编码
字符 十进制 十六进制
'0' 48 0x30
'A' 65 0x41
'a' 97 0x61
序列的概念
字符串是序列(有序排列)
所有的序列都能用len(x)函数求其长度
len(x)函数
返回字符串中字符的个数
练习:
用交互模式验证如下字符串有几个字符
1、’1234abcd‘
2, '5\'\4"'
3, '\"A\x34\056'
4, '\a\bc\td\n'
raw 字符串 (原始字符串)
格式:
r'字符串内容'
r"字符串内容"
r'''字符串内容'''
r"""字符串内容"""
作用:
让转义字符反斜杠\ 无效
示例:
a = 'C:\newfile\test.py'
print(a)
print(len(a))
a = r'C:\newfile\test.py'
print(a)
print(len(a))
字符串的运算
运算符: + += * *=
+ 加号运算符用于拼接字符串
如:x = "ABCD"
y = "123"
z = x + y
print(z) # ABCD123
+= 用于原字符串和右侧字符串拼接,再用变量绑定新的字符串
x = 'ABC'
y = '123'
x += y
print(x) # ABC123
* 运算符生成重复的字符串
x = "ABC" * 3
print(x) # ABCABCABC
注:字符串只能和整数相乘
*= 生成重复的字符串,再用原变量绑定
x = '123'
x *= 2
print(x) # 123123
字符串的比较运算
运算符:
< <= > >= == !=
比较规则:
依次按照编码值进行两两字符比较,一旦不同,则比较结束
并返回比较结果,当编码值和长度完全相同时,两个字符串相同
示例:
'A' < 'B' # True
'ABC' > 'ABB' # True
'ADC' <'ABC' # False
'ABC' >= '123' # True
'AB' < 'ABC' # True
'abc' == 'ABC' # False
in ,not in 运算符
作用:
in 用于序列,字典,集合中,用于判断某个值是否存在于容器中,如果存在则返回True,
则返回False
not in 与in运算符的返回结果相反
格式:
对象in序列
示例
x = 'welcome to tarena!'
'to' in x # True
'hello' in x # False
'e t'in x # True
'abc' not in x # True
练习:/home/tarena/aid1809/pbase/excese/day04-10-8
1、北京出租车计价器:
收费标准:
3公里以内收费 13元
基本单价 2.3元/公里(超出3公里以外)
空驾费:超过15公里后,每公里加收单价的50%的空驶费(3.45元/公里)
要求:输入公里数,打印出费用金额
2、输入一个学生的三科成绩:
1)打印出最高分是多少分?
2)打印出最低分是多少分?
3)打印出平均分是多少分?
3、计算BMI指数(Body Mass Index)又称身体质量指数
计算公式:
BMI = 体重(公斤)/身高的平方(米)
如:一个69公斤的人,身高173公分,则
BMI = 69 / 1.73 ** 2 # 得23.05
标准表:
BMI < 18.5 体重过轻
18.5 <= BMI < 24 体重正常
BMI >= 24 体重过重
要求:输入身高和体重,打印BMI的值,并打印体重状况
4、写一个程序,打印出一个高度为4行的矩形方框
要求方输入一个整数,此整数代表矩形的宽度,输入此矩形
如:
请输入矩形宽度:10
打印如下:
##########
# #
# #
##########
如果输入的数字越大,则此矩形会越宽