資源簡(jiǎn)介 (共33張PPT)Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.少兒編程課魔術(shù)紙牌(一)讀心術(shù)list列 表choose選 擇random隨 機(jī)魔術(shù)流程魔術(shù)師將21張紙牌平均分成3列,請(qǐng)一位觀眾選擇一張紙牌,告訴魔術(shù)師這張牌在第幾列中。魔術(shù)師將撲克牌收起來(lái),平均分成3列,請(qǐng)觀眾說(shuō)出剛才那張紙牌位于第幾列。魔術(shù)師再將撲克牌平均分成3列,并讓觀眾說(shuō)出剛才那張紙牌位于第幾列。最后,魔術(shù)師將撲克牌收起來(lái)分成3列并拿出一張紙牌。這張牌就是觀眾所選擇的牌。魔術(shù)圖解發(fā)牌觀眾選牌收牌發(fā)牌觀眾選牌收牌發(fā)牌觀眾選牌收牌發(fā)牌找出被選中的牌生成三組紙牌雙重for循環(huán)for x in range(10):#需要重復(fù)執(zhí)行的代碼#需要重復(fù)執(zhí)行的代碼for y in range(10):#需要重復(fù)執(zhí)行的代碼循環(huán)中的代碼需要縮進(jìn)4個(gè)空格split指令split():通過(guò)指定分隔符對(duì)字符串進(jìn)行切片,輸出為列表。分隔符:默認(rèn)為所有的空字符,包括空格、換行、制表符。h = '黑桃 紅桃 方片 梅花'.split()s= '2 3 4 5 6 7 8 9 10 J Q K A'.split()print(h)print(s)運(yùn)行結(jié)果:['黑桃', '紅桃', '方片', '梅花']['2', '3', '4', '5', '6', '7', '8', '9', '10', 'J', 'Q', 'K', 'A']append指令cards=[] #定義一個(gè)空列表append(內(nèi)容):在列表末尾追加內(nèi)容。cards.append(1)cards.append(2)cards.append(3)print(cards)[1, 2, 3]運(yùn)行結(jié)果:生成紙牌import randomh = '黑桃 紅桃 方片 梅花'.split()s = '2 3 4 5 6 7 8 9 10 J Q K A'.split()p = []for i in h:for j in s:temp = i +' '+ jp.append(temp)print(p)生成紙牌生成三組紙牌sample指令sample(列表,n):從列表中隨機(jī)抽取n個(gè)元素,并以列表的形式返回。import randomli=['a','b','c','d','e']temp=random.sample(li,2)print(temp)注意:結(jié)果是隨機(jī)的,每一次都不確定。隨機(jī)取出21張紙牌import randomh = '黑桃 紅桃 方片 梅花'.split()s = '2 3 4 5 6 7 8 9 10 J Q K A'.split()p = []for i in h:for j in s:temp = i +' '+ jp.append(temp)list = random.sample(p, 21)#從一副撲克中隨機(jī)取出21張牌,輸出為列表隨機(jī)取出21張紙牌生成三組紙牌發(fā)牌順序按照從左至右、從上往下的順序發(fā)牌。代碼中的發(fā)牌順序紙牌位置與list列表中下標(biāo)的關(guān)系:取出第一列紙牌第一列:0、3、6、9、12、15、18規(guī)律:(3 * 0) ~ (3* 6)代碼實(shí)現(xiàn):list1 = []for i in range(7):list1.append(list[3 * i])print(list1)取出第二列紙牌第二列:1、4、7、10、13、16、19規(guī)律:(3 * 0 + 1) ~ (3 * 6 + 1)代碼實(shí)現(xiàn):list2 = []for i in range(7):list2.append(list[3 * i + 1])print(list2)取出第三列紙牌第三列:2、5、8、11、14、17、20規(guī)律:(3 * 0 + 2) ~ (3 * 6 + 2)代碼實(shí)現(xiàn):list3 = []for i in range(7):list3.append(list[3 * i + 2])print(list3)整合代碼list1 = []list2 = []list3 = []for i in range(7):list1.append(list[3 * i])list2.append(list[3 * i + 1])list3.append(list[3 * i + 2])print(list1)print(list2)print(list3)將21張紙牌分為三組反思總結(jié)輸入指令input('提示信息'):向計(jì)算機(jī)輸入內(nèi)容指令說(shuō)明:括號(hào)中的字符串:提示使用者要向計(jì)算機(jī)輸入什么該指令的取值為用戶從鍵盤(pán)輸入的內(nèi)容格式化字符串%s:輸出字符串。%d:輸出整型。用來(lái)告訴程序以什么格式輸出內(nèi)容。a = 'Hello'print('%s,Jack!' % a)a = ['Hello', 'Jack']print('%s,%s!' %(a[0],a[1]))a = 1print('%d2345' % a)a = 1b = 2print('%d%d345' % (a, b))運(yùn)行結(jié)果:Hello,Jack!Hello,Jack!運(yùn)行結(jié)果:1234512345選牌并打印choose = int(input('你選擇的牌在第幾列:'))#將輸入的內(nèi)容轉(zhuǎn)化為整型,并賦值給 choose 變量print('你選擇的牌在第%d列。' % choose)#打印choose的數(shù)值觀眾選擇一張牌反思總結(jié) 展開(kāi)更多...... 收起↑ 資源預(yù)覽 縮略圖、資源來(lái)源于二一教育資源庫(kù)