数据类型、类型转换、格式化输出、运算符、二进制、流程控制语句
数据类型 |
Number(数字)
整形型 int
长整型 long
浮点型 float
复数 complex
字符串:str 可用''、""、'''保留格式输出''、"""保留格式输出"""
布尔类型:True、Fasle
元组:tuple
列表:list
字典:dict
集合:set
查看变量的数据类型:type(变量名)
类型转换 |
'''
转换为整形
1、str --> int
2、float --> int
3、bool --> int
'''
print(int('123')) # 123
print(int(123.45)) # 123,浮点数转换为整形会存在精度损失
# print(int('a')) # 报错
# print(int('123.56')) # 报错
print(int(True)) # 1
print(int(False)) # 0
'''
转换为str
int --> str
float --> str
bool --> str
'''
print(str(123)) # '123'
print(str(123.45)) # '123.45'
print(str(True)) # True
'''
转换为boolean,对于0、''、None、()、[]、{}的布尔值都是Fasle,其余的都是True
int --> bool
str --> bool
'''
print(bool(1)) # True
print(bool(2)) # True
print('abc') # True
print(bool(0)) # False
print(bool('')) # False
print(bool([])) # False
print(bool(())) # Fasle
print(bool({})) # False
print(bool(None)) # Fasle
格式化输出 |
name = '张三'
age = 24
money = 999.988
print('my name is %s, I am %d, I have %f' %(name, age, money)) # 格式化输出,浮点数默认6位小数
print('my name is %s, I am %d, I have %.2f' %(name, age, money)) # 格式化输出,保留几位小数点,四舍五入
print('my name is %s, I am %s, I have %s' %(name, age, money)) # 格式化输出,自动强制类型转换
运算符 |
1、算术运算符
print(3 + 4) # 7,做加法运算
print('aa' + 'bbb') # 'aabbb' ,字符串拼接
print(4 - 2) # 2,做减法运算
print(4 * 3) # 12,做除法运算
print(6 / 3) # 2.0,做除法运算
print(6 // 4) # 1,取商
print(6 % 4) # 2,取余数
print(2 ** 3) # 8,幂运算
2、关系运算符
print(3 > 7) # False
print('a' > 'baa') # False,比较的是ascii
print(3 >= 3) # True
print(3 < 2) # False
print(3 <= 2) # False
print(3 == 3) # True
print(3 != 2) # True
print(3 == 'aa') # False
print(3 > 'aaa') # 报错,数字与字符串只能做==比较,而且结果都是False,做其它比较时都会报错
3、赋值运算符
a = 1
b = 2
a += 2 # 3
a -= 1 # 2
a *= 2 # 4
a /= 2 # 2.0
a //= 2 # 1.0
a %= 2 # 1.0
b **= 3 # 8
4、逻辑运算符
'''
逻辑运算符 and or not
and:做取值运算,结果为True时,取最后一个为True的数,结果为False时,取第一个为False的数
or:做取值运算,结果为True时,取第一个为True的数,结果为False时,取最后一个为False的数
'''
print(1 and 2 and True and 'abc') # abc
print(1 and 0 and True and '' and None) # 0
print(0 or '' or None or [] or () or {} or False) # False
print(0 or 1 or 'abc' or True) # 1
'''
短路与:只要有一个为False,后面的表达式将不再执行
短路或:只要有一个为True,后面的表达式将不再执行
'''
print(1 > 2 and print(4)) # Fasle
print(3 > 2 and print(4)) # 4,None
print(1 < 2 or print(4)) # True
print(2 < 1 or print(4)) # 4,None
一、流程控制语句 |
* 格式1:
if 要判断条件:
条件成立要执行的语句
* 格式二
if 要判断的条件:
条件成功要执行的语句
* 格式三
if 要判断的条件:
条件成立要执行的语句
elif 要判断的条件:
条件成立要执行的语句
elif 要判断的条件:
条件成立要执行的语句
...
else:
条件都不成立要执行的语句
练习1:猜年龄游戏
# 在程序里设定好你的年龄,然后启动程序让用户猜测,用户输入后,根据他的输入提示用户输入的是否正确,如果错误,提示是猜大了还是小了
my_age = 28
user_input = int(input('请猜我的年龄:'))
if user_input > my_age:
print('猜大了')
elif user_input < my_age:
print('猜小了')
else:
print('猜对了')
2、while循环
* 格式一:
while 判断条件:
条件成立要执行的语句
* 格式二:
while 判断条件:
条件成立要执行的语句
else:
while循环正常执行完成要执行的语句
练习1:用户登录,登录3次失败提示账号被锁定
count = 3
while count > 0:
username = input('请输入用户名:')
password = input('请输入密码:')
if username == 'admin' and password == '123':
print('登陆成功!')
break
print('用户名或密码错误!')
count -= 1
else:
print('您已连续3次登录失败,账号已被锁定!')
3、for循环
格式一:
for i in range(10):
执行语句
格式二:
for i in range(10):
执行语句
else:
for循环正常结束要执行的语句
4、break、continue
break:结束当前层的循环
continue:跳过本次循环,继续下一次的循环