Python是目前最流行的編程語言之一,具有易學易用、代碼簡潔、可讀性強等優點。因此,Python開發者的需求也越來越大。作為Python開發者,掌握一些高級面試題目是非常必要的。本文將介紹一些Python高級面試題,希望能夠幫助您更好地準備面試。
# 第一題,寫一個函數實現斐波那契數列 def fib(n): if n<= 1: return n else: return (fib(n-1) + fib(n-2)) print(fib(10)) #輸出:55
上面的代碼實現了斐波那契數列,通過遞歸的方式來實現。在面試中,這種類型的題目常常會被考到。
# 第二題,寫一個函數實現反轉字符串 def reverse_string(s): if len(s) == 0: return s else: return reverse_string(s[1:]) + s[0] print(reverse_string('hello world')) #輸出:dlrow olleh
這個題目與第一題類似,同樣是通過遞歸的方式來實現。需要注意的是,由于Python中字符串是不可變對象,所以我們只能通過遞歸來實現字符串反轉。
# 第三題,寫一個函數統計一個文本中單詞出現頻率最高的前10個單詞 def top_n_words(file_name,n): with open(file_name) as f: words = f.read().split() word_count = {} for word in words: if word in word_count: word_count[word] += 1 else: word_count[word] = 1 top_words = sorted(word_count.items(), key=lambda x: x[1], reverse=True)[:n] return top_words print(top_n_words('test.txt',10))
第三題考察的是Python開發者的文本處理能力。通過讀取文本,統計單詞出現的頻率,再對結果進行排序,最后得到出現頻率最高的前10個單詞。
以上是Python高級面試題的一些示例,希望對您有所幫助。