2016.3.17.Python之循環

對昨天的代碼進行優化,用十四行實現了和昨天一樣的功能

代碼如下:

print('歡迎使用BMI指數計算\n')
h=float(input('請輸入你的身高(m):'))
w=float(input('請輸入你的體重(kg):'))
s=w/(h*h) 
if s<18.5:
    print('你的BMI指數爲:',s,'\n有點偏瘦啦~稍胖些會更健康哦')
elif s<=25:
    print('你的BMI指數爲:',s,'\n正常體重~非常健康!不錯不錯')
elif s<=28:
    print('你的BMI指數爲:',s,'\n有些偏胖,鍛鍊計劃可以開始啦')
elif s<=32:
    print('你的BMI指數爲:',s,'\n減肥減肥!我們都是潛力股~')
else:
    print('你的BMI指數爲:',s,'\n體脂過高會引起多種併發症哦,堅持運動吧!')    


今天繼續學習Python,循環。

有for x in...循環和while循環

前者是把每個元素代入變量想,然後執行縮進塊的語句,後者是隻要條件滿足就不斷循環,條件不滿足就退出循環。

另外接觸到了sum()和range()函數。

依然不做過多說明,部分內容有紙質筆記。下面是我的練習

請利用循環依次對list中的每個名字打印出Hello, xxx!

# -*- coding: utf-8 -*-
L = ['Bart', 'Lisa', 'Adam']
以下是代碼
names=['Michael','Lisa','Adam']
for name in names:
    print("Hello,"+name)
運行正確。

還可以用while來實現,如下:

L = ['Bart','Lisa','Adam']
n = 0
while n < len(L):
    print('hello: %s !' % L[n])
    n = n + 1

運行正確。


如果寫出了死循環語句,可以用Ctrl+c退出程序,或強制結束Python程序。

我試圖寫出一個Python死循環語句,好玩有意思,但是沒什麼靈感,可能明天會實現。


今天還學習了dict(dictionary)和set的使用,Python內置了字典:dict的支持,dict全稱dictionary,在其他語言中也稱爲map,使用鍵-值(key-value)存儲,具有極快的查找速度。

和list比較,dict有以下幾個特點:

  1. 查找和插入的速度極快,不會隨着key的增加而變慢;
  2. 需要佔用大量的內存,內存浪費多。

而list相反:

  1. 查找和插入的時間隨着元素的增加而增加;
  2. 佔用空間小,浪費內存很少。

所以,dict是用空間來換取時間的一種方法。

dict可以用在需要高速查找的很多地方,在Python代碼中幾乎無處不在,正確使用dict非常重要,需要牢記的第一條就是dict的key必須是不可變對象

這是因爲dict根據key來計算value的存儲位置,如果每次計算相同的key得出的結果不同,那dict內部就完全混亂了。這個通過key計算位置的算法稱爲哈希算法(Hash)。

要保證hash的正確性,作爲key的對象就不能變。在Python中,字符串、整數等都是不可變的,因此,可以放心地作爲key。而list是可變的,就不能作爲key

set和dict類似,也是一組key的集合,但不存儲value。由於key不能重複,所以,在set中,沒有重複的key。

要創建一個set,需要提供一個list作爲輸入集合,我們可以通過add(key)方法可以添加元素到set中,可以重複添加,但不會有效果,通過remove(key)方法可以刪除元素,另外,set可以看成數學意義上的無序和無重複元素的集合,因此,兩個set可以做數學意義上的交集、並集等操作。

至此,Python基礎知識已經基本完成,接下來就是函數等知識了。

就這樣。

明天學CSS基礎。






發佈了20 篇原創文章 · 獲贊 3 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章