1.进制及转换
0b开头是二进制数--bin
0o开头是八进制--oct
0x开头十六进制--hex
print(int(0b1000))
print(bin(8))
print(int(0o10))
print(oct(64))
print(hex(256))
print(int(0x16))
对应输出结果分别为:
8
0b1000
8
0o100
0x100
22
2.或与非: & | ~
print(3&2)
print(3|2)
print(~3)
2
3
-4
取反是指二进制取反, 一般为负数, 以为第一位是符号位
3.三目运算符
a = 6
b = 5
result = (a+b) if (a>b) else (a-b)
print('三目运算result:', result)
输出结果为:三目运算result: 11
4.if else语句
- demo01:
username='admin'
if username:
print('login....')
age=0
if age:
print('age%d'%age)
输出:login....
即:变量值为0, '', None时为false, 反之为true
- demo02:
username='lucy'
age=20
if age>18 and username:
print('{}今年{}岁了'.format(username, age))
输出:lucy今年20岁了
- demo03:
print('*'*10,'欢迎进入游戏','*'*10)
level=int(input('请输入等级(1, 2):'))
if level==1:
print('免费玩耍')
else:
print('充值后可以玩耍')
money=int(input('请充值(100的倍数):'))
if money%100 == 0 and money >0:
print('充值成功')
else:
print('充值失败')
********** 欢迎进入游戏 **********
请输入等级(1, 2):2
充值后可以玩耍
请充值(100的倍数):3
充值失败
- demo04:
import random
random_num=random.randint(1, 10)
random_input=input('请输入你要猜的数(1--9):')
if random_input==random_num:
print('猜对啦')
else:
print('猜错啦')
请输入你要猜的数(1--9):2
猜错啦
- demo05:
import random
guess_num=int(input('猜数(0-99):'))
if guess_num<=18:
print('猜得太小了')
elif guess_num>18 and guess_num<40:
print('正好才对')
else:
print('猜得太大了')
猜数(0-99):30
正好才对
5.for循环
- demo01:
for i in range(5):
print('hello')
hello
hello
hello
hello
hello
执行顺序:range序列初始化, 不断地把值赋给i, 执行for循环内逻辑, 直到range序列中没有元素
- demo02
for i in range(2):
print('hello')
else:
print('循环完了')
hello
hello
循环完了
for...else结构
- demo03:
if 10>7:
print('hello')
else:
pass
print('循环完了')
pass:空语句, 保证语法正确
- demo04:
for i in range(3):
name=input('请输入用户名:')
password=input('请输入密码:')
if name=='lucy' and password=='admin':
print('*'*5, '欢迎登陆', '*'*5)
break
else:
print('密码输入错误!请重新输入')
else:
print('密码输入错误次数过多, 已锁定')
请输入用户名:lucy
请输入密码:1
密码输入错误!请重新输入
请输入用户名:lucy
请输入密码:admin
***** 欢迎登陆 *****
else执行:for range正常循环完毕就会执行 , 遇到break就不会执行else中的内容
- demo05
for i in range (0, 20, 5):
print('i:{}'.format(i))
i:0
i:5
i:10
i:15