网络安全入门学习第十二课——python位移、输出、推导式


一、位移运算符bin

二进制位的位移
“<<”, 左移运算符,数变大,移动1位相当于乘以一次2
“>>”, 右移运算符,数变小,移动1位相当于除以一次2

举例:

1bin(1)
输出:0b1	#就是0b 0000 0001

2bin(1<<1)
输出:0b10	#左移1位,就是0b 0000 0010

3bin(1<<2)
输出:0b1	#左移2位,就是0b 0000 0100

4bin(4<<1)
输出:0b1	#左移1位,就是0b 0000 1000

5bin(4>>1)
输出:0b1	#右移1位,就是0b 0000 0010

二、print()函数

输出函数

1、仅用来输出字符串

例子:
print("hello word")
输出:hello word

2、输出一个或多个变量

例子:
value1=123
value2="你好"
value3=1.23
print("三个变量依次为:"value1,value2,value3)
输出:三个变量依次为:123你好1.23

3、格式化输出

格式:print(“<输出字符串模板>”%(<变量1>,<变量2>,<变量3>))

例子:
a = 100
b = 1.553
print("数字%d和数字%f的乘积是:%f"%(a,b,a*b))
输出:数字100和数字1.553000的乘积是:155.300000

print("数字%.3f和数字%f的乘积是:%f"%(a,b,a*b))
输出:数字100.000和数字1.553000的乘积是:155.300000
#其中%.3f代表数字保留3位小数,%f默认保留6位小数
符号描述
%c格式化字符及其ASCII码
%s格式化字符串
%d格式化整数
%u格式化无符号整型
%o格式化无符号八进制数
%x格式化无符号十六进制数
%X格式化无符号十六进制数(大写)
%f格式化浮点数字,可指定小数点后的精度
%e用科学计数法格式化浮点数
%E作用同%e,用科学计数法格式化浮点数
%g%f 和 %e 的简写
%G%f 和 %E 的简写
%p用十六进制数格式化变量的地址

4、end 和 sep

print()函数默认的输出格式实际上是:

print(i,end="\n",sep="")

# i 是输出的参数;
# end 是多条输出结果的分隔方式(例如for循环输出),默认是换行;
# sep 是切片,默认是不切片。

三、format()函数

用于混合输出字符串与变量值。模板字符串是一个由字符串和替换域组成的字符串,替换域用大括号{ }表示,对应format()方法中逗号分隔的参数

  • 格式:print(<输出字符串模板>.format(<变量1>, <变量2>,…, <变量n>))

例子:

a = 123.456
b = 1024
print("数字{}和数字{}的乘积是{}".format(a, b, a*b))

输出:数字123.456和数字1024的乘积是126417.944

1、没有指定替换域序号

print("{}曰,学而时习之,不亦{}。".format("孔子","说乎"))

2、有指定替换域序号

print("{1}曰,学而时习之,不亦{0}。".format(,"说乎","孔子"))

3、格式控制

在对应的大括号中写入相应的符号来进行替换内容的格式控制
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
<类型>表示输出整数和浮点数类型的格式规则。

对于整数类型,输出格式包括6种:
• b: 输出整数的二进制方式;
• c: 输出整数对应的Unicode字符;
• d: 输出整数的十进制方式;
• o: 输出整数的八进制方式;
• x: 输出整数的小写十六进制方式;
• X: 输出整数的大写十六进制方式;

对于浮点数类型,输出格式包括4种:
• e: 输出浮点数对应的小写字母e的指数形式;
• E: 输出浮点数对应的大写字母E的指数形式;
• f: 输出浮点数的标准浮点形式;
• %: 输出浮点数的百分形式。


四、zip()函数

zip() 接受一系列可迭代的对象作为参数,将对象中对应的元素打包成一系列的元组

例子:

a = [1,2,3,4,5]
b = ["x","y","z","q","w"]
t = zip(a,b)
print(t)
输出:<zip object at 0x0000021BE7844440>
print(list(t))
输出:[(1, 'x'), (2, 'y'), (3, 'z'), (4, 'q'), (5, 'w')]

五、列表推导式

相当于把所有的判断条件都写进列表里面

  • 格式:列表名 = [表达式 for 循环变量 in 其他数据 [条件 循环2]]
例子1:
输出123456789的平方
a = [ x*x for x in range(1,10) ]
print(a)
输出:[1,4,9,16,25,36,49,64,81]

例子2:
输出110之间的偶数的平方
a = [ x*x for x in range(1,11) if x%2 == 0 ]
print(a)
输出:[4,16,36,64,100]

例子3:
多层嵌套的列表推导式
a = [ x*y for x in rang(1,5) if x>2 for y in range(1,4) if y<3 ]
print(a)
输出:[3,6,4,8]
##推导:x : 34,y : 12

六、字典推导式

利用其他数据推导出字典

a = [1,2,3,4,5]
b = ["x","y","z","q","w"]
g = {j:k for j,k in zip(a,b)}
print(g)
输出:{ 1: 'x', 2: 'y', 3: 'z', 4: 'q', 5: 'w'}

七、集合推导式

利用其他数据推导出集合

xset = {x for x in range(20) if x%3==0}
print(xset)
输出:{0, 3, 6, 9, 12, 15, 18}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值