提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
本文主要介绍python 中的二进制,八进制,十六进制转换,以及位运算
提示:以下是本篇文章正文内容,下面案例可供参考
一、二进制,八进制,十六进制的转换?
注意:0xd 表示:使用二进制: 0xo 表示使用八进制: 0xx 表示的是十六进制.
计算机一般使用的是补码
使用的函数
十进制: int()
二进制:bin()
八进制:oct()
十六进制:hex()
二、python的位运算
1.位运算的用处
位运算符通常在图形、图像处理和创建设备驱动等底层开发中使用。使用位运算符可以直接操作数值的原始 bit 位,尤其是在使用自定义的协议进行通信时,使用位运算符对原始数据进行编码和解码也非常有效。
2.位运算的种类
2.1 & 与运算
2.2 | 或运算
2.3 ~ 取反
2.4 <<左移
2.5 >>右移
# 位运算
# 二进制: 0 1
'''
1 1
8 4 2 1
'''
a =3
print(bin(a)) # 0b 11
a=13
print(bin(a))
b = 0b10111 # 0b 二进制 二进制的表示: 0b1000101
print(int(b))
c=-8 # -0b1000 0000 1000
print(bin(c))
c= 0o6430 # 0o 开头的都是八进制 里面的数字不能超过8
print(int(c))
# 开头表示0x 0-9 a-f
# 应用: FFFFFF 000000 FF0000 00FF00
d=0x9ab16
print(int(d))
'''
&
|
~
^
<<
>>
'''
print(3 & 2)
'''
类似and
1 True 0 False
0000 0011
& 0000 0010
------------
0000 0010
| 类似or
1 True 0 False
'''
print(5 | 3)
'''
0000 0101
| 0000 0011
--------------
0000 0111
'''
print(~5) # 取反 将十进制的数字对应的二进制进行取反操作。
'''
0000 0101
取反:
1111 1010
-6
1111 1010 减1
1111 1001 取反
0000 0110 6
看第一位(第一位是符号位,只要第一位是1的就是负数,第一位是0的就是整数)
-6:
0000 0110
1111 1001 反码
1111 1010 补码
'''
# 异或 ^ 相同的是0 不同的是1
print(3^5)
'''
# 步骤:
1. 左边的数字转成二进制
2. 右侧的数字转成二进制
3. 对齐,上下进行比较(相同的是0 不同的是1)
4. 将计算的结果转成十进制
3 0000 0011
5 0000 0101
----------------
0000 0110 -----> 6
'''
# 左移:
print(2<<1) # 4
print(2>>1) # 1
'''
2的二进制:
0000 0010
左移: m<<n m*2的n次方
右移: m>>n m//2的n次方
'''
print(16<<2)
print(16>>2)
print(-0b1000000)
print(64<<1)
## 2.读入数据
<font color=#999AAA >代码如下(示例):
```c
data = pd.read_csv(
'https://labfile.oss.aliyuncs.com/courses/1283/adult.data.csv')
print(data.head())
该处使用的url网络请求的数据。
左移:
右移:
三 三目运算符
Python 可通过 if 语句来实现三目运算符的功能,因此可以近似地把这种if语句当成三目运算符。作为三目运算符的 if 语句的语法格式如下:
True_statements if expression else False_statements
三目运算符的规则是:先对逻辑表达式 expression 求值,如果逻辑表达式返回 True,则执行并返回 True_statements 的值;如果逻辑表达式返回 False,则执行并返回 False_statements 的值。
# 三目运算符
# 格式:表达式 ? 真 : 假
# result = (8>10)?'真':'假'
# print(result)
# python的格式: 结果 if 表达式 else 结果
a=6
b=5
result = (a+b) if a<b else (b-a)
'''
判断表达式是True还是False
如果是True则 将if前面的内容进行运算,并将结果赋值成result
如果是False则将else后面的内容运算结果,并将结果赋值成result
'''
print(result)
# 运算符的优先级:
'''
排序:
**
~
+ - (符号运算符)
* / // %
+ - 加减
<< >>
&
^
|
== != > >= < <=
is is not
not
and
or
'''
四 流程控制语句-if语句
if 语句的形式:
第一种形式:
if expression:
statements…
第二种形式:
if expression
statements…
else:
statements…
第三种形式:
if expression:
statements…
elif expression:
statements…
…//可以有零条或多条elif语句
else:
statement…
练习一
if 条件:
条件成立执行的语句
'''
username='admin' # 没有登录
# password=''
# python: 判断的变量是'' 0 None 默认是False
# python: 如果变量有值'abc','kkkk','yueryu',认为是True
if username: # 'admin'!='' True 如果条件运算结果是True则进入内层
print('嘿嘿!我登录啦!')
print('-------------')
num =9
if num:
print('------>',num)
'''
if num:
print('.....')
等效:
if num!=0:
print('.....')
'''
'''
练习:
如果年龄大于18 并且 输入le姓名,则打印xxx今年xxx岁
'''
# age = int(input('输入年龄:'))
# username=input('输入用户名')
# if age>18 and username: # True and False --->False
# print('{}今年{}岁了!'.format(username,age))
# print('---game over----')
练习二
'''
if 判断的第二种使用方式:
if 表达式(条件):
条件成立
else:
条件不成立执行的语句
注意:添加缩进 一个tab
'''
'''
需求:
消消乐
lv1
lv2
lv1: 免费玩 随便玩
lv2: 充值 买道具 继续玩
'''
# print('*'*10,'欢迎来到消消乐','*'*10)
# level = input('请输入你的级别(lv1,lv2):')
# if level=='lv1':
# print('免费玩 随便玩')
# else:
# print('已经进入付费级别,充值继续玩')
# money = int(input('请充值(必须是100的倍数):'))
# # if 语句是允许嵌套,注意缩进问题
# if money%100==0 and money>0:
# print('充值成功!充值金额是:',money)
# else:
# print('充值失败,充值金额必须是100的倍数!')
练习三
'''
if 条件1:
成立
if 条件2:
成立
else:
不成立
else:
不成立
if 条件3:
成立
else:
不成立
'''
# 随机数:
import random
# print(random.randint(1,10))
'''
猜大小
步骤:
1. 系统产生一个随机数
2. 键盘输入一个数
3. 将系统产生的与键盘输入的进行比较
4. 猜对了,中大奖 猜错啦 拜拜下次再来
'''
# ran = str(random.randint(1,10)) # 8
# num =input('请输入(1-10)之间的随机:') # '8'
# # print(8 =='8')
# if ran == num:
# print('恭喜中大奖啦!奖品是:笔记本')
# else:
# print('很遗憾你猜错啦!与奖品擦肩而过~~~')
'''
多层条件判断:
if 100-90:
优+
elif 90-80
优-
elif 80-70
良
elif 70-60
及格
else
不及格
'''
age = int(input('请猜猜宋宋姐年龄:'))
if age <= 18 and age>0:
print('(o゜▽゜)o☆[BINGO!] 太有眼光啦!')
elif age>18 and age<=30:
print('人家还是宝宝呢.....')
elif age>30 and age<=40:
print('长得太年轻了吧!!!!')
else:
print('输入错误!')
'''
4种:
if 条件:
语句
----------
if 条件:
语句
else:
语句
----------
if 条件1:
.....
if 条件2:
语句
else:
语句
else:
.....
-----------
if 条件1:
语句
elif 条件2:
语句
elif 条件3:
....
else:
语句
'''
总结
提示:这里对文章进行总结:
以上:主要介绍了 python 的位运算,三目运算符,if条件语句。