编程python期末(python编程题题库)

2023-12-21 06:58:20 数码极客 bianji01

 

求解一道python编程题

斐波那契数列自第三个数开始,每个数均为之前两个数的和。

至少有两种方法来实现它。

最常见的利用迭代的方法,其核心思路是

Fib(n)=fib(n-1)+fib(n-2)

而在n<2时直接,没有n-2,因此直接返回1:

deffib(num):return1ifn<2elsefib(num-1)+fib(num-2)

这是一种很简单的实现。在阶梯数不大时,它很好用。当阶梯数很大时,因为二次手迭代,会比较慢。因此,可以在计算中保存中间值(1至n-1的阶梯数)来减少计算量:

这种方式在计算阶梯数10000时就可以保持不错的性能。如果需要多次计算该数列,则可以利用对象来保持这个中间值列表,下列代码中,Fibonaci实例只计算未曾计算的阶梯数,在重复调用时它更具优势:

classFibonaci(object):

....history=[1,1]

....defcacl(self,num):

........whilelen(self.history)<=num:

............self.history.append(self.history[-1]+self.history[-2])

........returnself.history[num]

if__name__==__main__:

....fib=Fibonaci()

....print(fib.calc(100))

....print(fib.calc(32))

....print(fib.calc(10000))

Python爬虫期末试题(编程题答案)

from seleniumimport webdriverimport timefrom selenium.webdriverimport ActionChainsdriver = webdriver.Chrome()driver.get("# 点击密码登录driver.find_element_by_class_name(account-tab-account).click()# 定位账户 # 输入内容driver.find_element_by_id(username).send_keys(2331566038)driver.find_element_by_id(password).send_keys(*********)driver.find_element_by_link_text(登录豆瓣).click()# 进入内嵌滑动验证页面iframe = driver.find_element_by_id(tcaptcha_iframe)driver.switch_to_frame(iframe)element = driver.find_element_by_xpath(//*[@id="tcaptcha_drag_thumb"])ActionChains(driver).click_and_hold(on_element=element).perform()ActionChains(driver).move_to_element_with_offset(to_element=element,xoffset=180,yoffset=0).perform()driver.save_screenshot(豆瓣.png)time.sleep(5)driver.quit()import urllib.requestimport urllib. = {"wd":"浙江大学"}word = urllib.parse.urlencode(word)new_url = url +"?" + wordheader = {"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.114 Safari/537.36"resquest = urllib.request.Request(new_url,headers = header,)response = urllib.request.urlopen(resquest)html = response.read().decode(utf-8)print(html)

声明:易趣百科所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系315127732@qq.com
广告位招租
横幅广告