经典例题(一)
1,已知復(fù)數(shù) x = 6+ 8j 請(qǐng)寫出它的模、實(shí)部、虛部及共軛復(fù)數(shù)的命令,并寫出運(yùn)行結(jié)果。
X = 6 + 8j print("模為:%d"% abs(X)) print("實(shí)部為:%s"% X.real) print("虛部為:%s"% X.imag) print("共軛復(fù)數(shù)為:%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’])的運(yùn)行結(jié)果分別是什么?并說明理由。
首先分析,由題可知
a為[列表],是一個(gè)有序的可重復(fù)的可變對(duì)象集合==== a[1]為列表a中的第二個(gè)元素,即98
b為(元組),有序的可重復(fù)的不可變的對(duì)象集合對(duì)象可以是不同的數(shù)據(jù)類型、一旦創(chuàng)建就不能改變,元組是常量列表==== b[1]為元組中的第二個(gè)元素,即98
c為{字典},無序的鍵值對(duì)集合、可變、字典的鍵值不允許重復(fù)==== 字典只能通過鍵值來唯一確定元素,不可以通過c[1]來顯示字典c中的元素,但可以通過鍵值來訪問字典中的元素,c[‘q’]可以,即顯示鍵值 字符’q’所對(duì)應(yīng)的值100
d為{集合},無序的唯一對(duì)象集合===由于集合是無序的,故不可以通過d[1]來顯示d中的元素
3,`寫出以下命令的運(yùn)行結(jié)果,并說明理由。
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 可以理解為找真值演算,從左到右發(fā)現(xiàn)真值就返回真值; 如果兩個(gè)都是假值,那就返回最后一個(gè)假值。
and 可以理解為找假值演算,從左到右發(fā)現(xiàn)假值就返回假值;如果兩個(gè)都是真值,那就返回最后一個(gè)真值。
演算規(guī)則簡(jiǎn)單歸納一下就是:
or :找真值:如果有一個(gè)值為真,or 立刻返回第一個(gè)真值;如果所有值都為假,or 返回最后一個(gè)假值。
and :找假值:如果有一個(gè)值為假,and 立刻返回第一個(gè)假值;如果所有值都為真,and 返回最后一個(gè)真值。
2 or 3===2
解:or找真值,其中2為真,直接返回2,后面不用運(yùn)算,直接出結(jié)果,結(jié)果為2
2 and 3===3
解:and找假值,其中2、3都為真,則返回最后一個(gè)真值,結(jié)果為3
2 and 3 and True===True
解:and找假值,其中2、3、True都為真,則返回最后一個(gè)真值,結(jié)果為True
0 and 3 and 1===1
解:and找假值,其中0位假,則結(jié)果返回0
0 and 3 or 1===1
解:先進(jìn)行and運(yùn)行,找假值,其中0位假,即0 and 3的結(jié)果為0,然后再0 or 1,找真值,其中1為真,最后返回結(jié)果為1
0 and 3 or 1 or 4===1
解:先進(jìn)行and運(yùn)行,找假值,其中0位假,即0 and 3的結(jié)果為0,然后再0 or 1,找真值,其中1為真,最后再進(jìn)行1 or 4,找真值,其中1為真,最后返回結(jié)果為1
0 or False and 1===False
解:先進(jìn)行0 or False運(yùn)算,找真值,其中0和False都為假,返回最后一個(gè)出現(xiàn)的假值,即返回False,然后在False and 1,找假值,其中False為假值,最后的結(jié)果為False
4,編寫小程序,輸入包含若干集合的列表,輸出這些集合的并集和交集。要求使用reduce()完成。
from functools import reduce a=eval(input("請(qǐng)輸入包含若干集合的列表:"))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,將如下生日歌進(jìn)行改善:將所有英文字母小寫,去除首尾空格,將俚語替換為書面語。
string1 = ’ haPPy BiRthDAy To u’
string2 = ‘Happy biRthDAy To you’
string3 = ’ haPpy BirThdAy 2 deAr LiLi’
string4 = ’ happy birthday 2 u’
總結(jié)
- 上一篇: 一立方陶粒多少钱啊?
- 下一篇: if语句(四)