日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

题型分析

發布時間:2025/3/8 编程问答 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 题型分析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、

簡單讓A、B的值交換

a,b = 1,2 print(a,b) a = 1 b = 2 a,b = b,a print(a,b) a,b=[1,2],[5,9] print(a,b)

?2、元組???????? 如果元祖里面只有一個元素且不加,那此元素是什么類型,就是什么類型。

tu1 = (1) tu2 = (1,) print(tu1,type(tu1)) print(tu2,type(tu2)) tu1 = ([1]) tu2 = ([1],) print(tu1,type(tu1)) print(tu2,type(tu2))

?3、

l1 = [1,[1],2,3,4] l2 = l1[:] l1[1].append('a') #l2 的結果是什么? #l1 和l2同時都是[1, [1, 'a'], 2, 3, 4] 淺copy print(l1,id(l1)) print(l2,id(l2)) print(l1[1] is l2[1])

?生成器相關面試題:

一、

def demo():for i in range(4):yield ig=demo()g1=(i for i in g) g2=(i for i in g1)print(list(g1)) print(list(g2))面試題1

?

二、

?

def add(n,i):return n+idef test():for i in range(4):yield ig=test() for n in [1,10]:g=(add(n,i) for i in g)print(list(g))面試題2

?

三、

import osdef init(func):def wrapper(*args,**kwargs):g=func(*args,**kwargs)next(g)return greturn wrapper@init def list_files(target):while 1:dir_to_search=yieldfor top_dir,dir,files in os.walk(dir_to_search):for file in files:target.send(os.path.join(top_dir,file)) @init def opener(target):while 1:file=yieldfn=open(file)target.send((file,fn)) @init def cat(target):while 1:file,fn=yieldfor line in fn:target.send((file,line))@init def grep(pattern,target):while 1:file,line=yieldif pattern in line:target.send(file) @init def printer():while 1:file=yieldif file:print(file)g=list_files(opener(cat(grep('python',printer()))))g.send('/test1')協程應用:grep -rl /dirtail&grep

?內置函數相關的面試題:

現有兩個元組(('a'),('b')),(('c'),('d')),請使用python中匿名函數生成列表[{'a':'c'},{'b':'d'}]

#答案一 test = lambda t1,t2 :[{i:j} for i,j in zip(t1,t2)] print(test(t1,t2)) #答案二 print(list(map(lambda t:{t[0]:t[1]},zip(t1,t2)))) #還可以這樣寫 print([{i:j} for i,j in zip(t1,t2)])coding 1.下面程序的輸出結果是: d = lambda p:p*2 t = lambda p:p*3 x = 2 x = d(x) x = t(x) x = d(x) print x2.現有兩元組(('a'),('b')),(('c'),('d')),請使用python中匿名函數生成列表[{'a':'c'},{'b':'d'}]3.以下代碼的輸出是什么?請給出答案并解釋。 def multipliers():return [lambda x:i*x for i in range(4)] print([m(2) for m in multipliers()]) 請修改multipliers的定義來產生期望的結果。練習

第三題答案:

?使用遞歸函數實現斐波那契數列:

def func(n,a=1,b=1):if n == 1 :return areturn func(n-1,b,a+b) print(func(100))

使用遞歸實現階乘算法:

def fac(n):if n == 1 :return 1return n * fac(n-1) print(fac(10))

?紙牌游戲(《流暢的Python》)

l import collections from random import choice import random Card = collections.namedtuple('Card',['rank','suit']) class FrenchDeck:ranks = [str(n) for n in range(2,11)] + list('JQKA')suits = 'spades diamonds clubs hearts'.split() #黑桃 方片 梅花 紅桃def __init__(self):self.cards = [Card(rank,suit) for suit in self.suits for rank in self.ranks]def __len__(self):return len(self.cards)def __getitem__(self, position):return self.cards[position] beer_card = Card('7','diamonds') #方片 7 print(beer_card) deck = FrenchDeck() print(deck.__dict__) print(len(deck)) print(deck[0]) print(deck[-1]) print(choice(deck)) #對應 from random import choice n = random.choice(deck) print(n) print(deck[:3]) print(deck[12::13]) for card in deck:print(card) for card in reversed(deck):print(card) print(Card('Q','hearts') in deck) print(Card('7','beasts') in deck) from random import shuffle #隨機洗牌 shuffle(deck) View Code

去重題型

class Person:def __init__(self,name,age,sex):self.name = nameself.age = ageself.sex = sexdef __hash__(self):return hash(self.name+self.sex)def __eq__(self, other):if self.name == other.name and self.sex == other.sex:return Truep_lst = [] for i in range(84):p_lst.append(Person('egon',i,'male'))print(p_lst) print(set(p_lst))一道面試題 View Code

?

轉載于:https://www.cnblogs.com/DI-DIAO/p/8074230.html

總結

以上是生活随笔為你收集整理的题型分析的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。