1,已知复数 x = 6+ 8j 请写出它的模、实部、虚部及共轭复数的命令,并写出运行结果。
X = 6 + 8j
print("模为:%d"% abs(X))
print("实部为:%s"% X.real)
print("虚部为:%s"% X.imag)
print("共轭复数为:%s"% X.conjugate())
效果图如下:
2,已知a= [97, 98, 99,100], b = (97, 98, 99,100), c = {‘x’:97, ‘y’:98, ‘z’:99,’q’:100}, d = {97, 98, 99,100},则a[1]、b[1]、c[1]、d[1]及c[‘q’])的运行结果分别是什么?并说明理由。
首先分析,由题可知
a为[列表],是一个有序的可重复的可变对象集合==== a[1]为列表a中的第二个元素,即98
b为(元组),有序的可重复的不可变的对象集合对象可以是不同的数据类型、一旦创建就不能改变,元组是常量列表==== b[1]为元组中的第二个元素,即98
c为{字典},无序的键值对集合、可变、字典的键值不允许重复==== 字典只能通过键值来唯一确定元素,不可以通过c[1]来显示字典c中的元素,但可以通过键值来访问字典中的元素,c[‘q’]可以,即显示键值 字符’q’所对应的值100
d为{集合},无序的唯一对象集合===由于集合是无序的,故不可以通过d[1]来显示d中的元素
3,`写出以下命令的运行结果,并说明理由。
2 or 3
2 and 3
2 and 3 and True
0 and 3 and 1
0 and 3 or 1
0 and 3 or 1 or 4
0 or False and 1`
Python 中,
or 可以理解为找真值演算,从左到右发现真值就返回真值; 如果两个都是假值,那就返回最后一个假值。
and 可以理解为找假值演算,从左到右发现假值就返回假值;如果两个都是真值,那就返回最后一个真值。
演算规则简单归纳一下就是:
or :找真值:如果有一个值为真,or 立刻返回第一个真值;如果所有值都为假,or 返回最后一个假值。
and :找假值:如果有一个值为假,and 立刻返回第一个假值;如果所有值都为真,and 返回最后一个真值。
2 or 3===2
解:or找真值,其中2为真,直接返回2,后面不用运算,直接出结果,结果为2
2 and 3===3
解:and找假值,其中2、3都为真,则返回最后一个真值,结果为3
2 and 3 and True===True
解:and找假值,其中2、3、True都为真,则返回最后一个真值,结果为True
0 and 3 and 1===1
解:and找假值,其中0位假,则结果返回0
0 and 3 or 1===1
解:先进行and运行,找假值,其中0位假,即0 and 3的结果为0,然后再0 or 1,找真值,其中1为真,最后返回结果为1
0 and 3 or 1 or 4===1
解:先进行and运行,找假值,其中0位假,即0 and 3的结果为0,然后再0 or 1,找真值,其中1为真,最后再进行1 or 4,找真值,其中1为真,最后返回结果为1
0 or False and 1===False
解:先进行0 or False运算,找真值,其中0和False都为假,返回最后一个出现的假值,即返回False,然后在False and 1,找假值,其中False为假值,最后的结果为False
4,编写小程序,输入包含若干集合的列表,输出这些集合的并集和交集。要求使用reduce()完成。
from functools import reduce
a=eval(input("请输入包含若干集合的列表:"))def intersect(x,y):return x | y
res = reduce(intersect,a)
print("并集为:",str(res))def union(x,y):return x & y
res1 = reduce(union,a)
print("交集为:",str(res1),end="")
效果图如下:
5,将如下生日歌进行改善:将所有英文字母小写,去除首尾空格,将俚语替换为书面语。
string1 = ’ haPPy BiRthDAy To u’
string2 = ‘Happy biRthDAy To you’
string3 = ’ haPpy BirThdAy 2 deAr LiLi’
string4 = ’ happy birthday 2 u’
string1 = ' haPPy BiRthDAy To u'
string2 = 'Happy biRthDAy To you'
string3 = ' haPpy BirThdAy 2 deAr LiLi'
string4 = ' happy birthday 2 u'
print(string1.lower().strip().replace("u","you"))
print(string2.lower().strip())
print(string3.lower().strip().replace("2","to"))
print(string4.lower().strip().replace("2","to").replace("u","you"))