国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

python koans: Triangle.py, about_triangle_project2

stefan / 2867人閱讀

摘要:的代碼沒有什么特別這是一個,現在在里面已經支持使用了,所以運行順序應該是建立運行,,的對應。之所以寫這個,主要是之前在這里堵了很久,最近在看到了里面關于這道題的討論才弄明白該怎么寫。的相關鏈接在下面

about_triangle_prject2的代碼沒有什么特別:

def test_illegal_triangles_throw_exceptions(self):
        with self.assertRaises(TriangleError):
            triangle(0, 0, 0)

這是一個with context manager,assertRaises現在在python3里面已經支持使用with了,所以運行順序應該是建立assertRaises>運行triangle(0,0,0)>assertRaises __exit__的對應。不過這一題主要需要書寫的部分不在這里,而是triangle.py

def triangle(a, b, c):
    side_arr = sorted([a,b,c])
    if side_arr[0]<=0 or side_arr[2]>= side_arr[0]+side_arr[1]:
        raise TriangleError
    else:
        subEdge = set([a,b,c])
        if len(subEdge) == 1:
            return "equilateral"
        elif len(subEdge) == 2:
            return "isosceles"
        else:
            return "scalene"

# Error class used in part 2.  No need to change this code.
class TriangleError(Exception):
  pass

這里面關鍵的內容是下面:

    side_arr = sorted([a,b,c])
    if side_arr[0]<=0 or side_arr[2]>= side_arr[0]+side_arr[1]:
        raise TriangleError
    else:

簡單說就是兩個條件,首先不能有任何一個邊長度小于等于0(選取三個邊里面最小的),然后最長邊應該短于另外兩邊的和,如果上面的條件不能達到,那么就raise一個自建的error Class:TriangleError

當然TriangleError只是一個空的類,但是沒關系,這道題這樣就已經過了。

之所以寫這個,主要是之前在這里堵了很久,最近在stackoverflow看到了ruby koans里面關于這道題的討論才弄明白該怎么寫。stackoverflow的相關鏈接在下面:

http://stackoverflow.com/questions/3834203/ruby-koan-151-raising-exceptions

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/37723.html

相關文章

  • 2013年度Python測試與調試工具

    摘要:周刊根據讀者對周刊文章的點擊數據,評選出了年最受關注的測試與調試工具。 Pycoders周刊根據讀者對周刊文章的點擊數據,評選出了2013年最受關注的Python測試與調試工具。 python_koans (github.com) showImg(https://lh6.googleusercontent.com/3C_maRgJSN4L8CJv9k6CHcNpTGQANwYY_...

    Karrdy 評論0 收藏0
  • 蠎周刊 : 2013最贊

    摘要:譯發蠎周刊最贊這周咱們作點兒不同的本文根據大家過去對周刊文章的點擊量分析出的年度頂級項目希望大家喜歡如果怕我們錯過年的最佳項目請及時郵件知會一下次周我們將恢復期周刊新年新折騰我們發布了現在開始到一月底使用優惠碼發布職位信息可以獲得的折扣才 譯發: 蠎周刊 : 2013最贊 Hi Pythonistas! 這周咱們作點兒不同的 ;-) 本文根據大家過去對周刊文章的點擊量分析出的 ...

    lavnFan 評論0 收藏0
  • TensorFlow1.2.0版發布:14大新功能,增加Intel MKL集成

    摘要:主要的功能和改進上支持。對象現在從屬于,在發布時的嚴格描述已經被刪除一個首次被使用,它自己緩存其范圍。在發布前,許多的的功能和類別都在命名空間中,后被移到。雖然我們會盡量保持源代碼與兼容,但不能保證。為增加了雙線性插值。 主要的功能和改進1. Windows上支持Python3.6。2. 時空域去卷積(spatio temporal deconvolution.)增加了tf.layers.c...

    cjie 評論0 收藏0
  • TensorFlow正式發布1.5.0,支持CUDA 9和cuDNN 7,雙倍提速

    摘要:剛剛,發布了正式版,很多人都期待已久,最重大的改動是支持和,這承諾將使上的訓練速度翻倍。此外,預覽版可用,也將吸引不少初學者。其他為添加必要的形狀支持。,,現在支持具有和支持的任意擴展。允許稀疏浮動分割以支持多值特征列。 剛剛,TensorFlow發布了1.5.0正式版,很多人都期待已久,最重大的改動是支持CUDA 9和cuDNN 7,這承諾將使Volta GPUs/FP16上的訓練速度翻倍...

    zgbgx 評論0 收藏0
  • Python 2.7.x 和 Python 3.x 的主要區別

    摘要:跳轉到章節預覽在中創建迭代對象的用法是非常流行的。循環變量和全局命名空間泄漏好消息在中循環變量不會再導致命名空間泄漏。通過解析用戶的輸入幸運的是,在中已經解決了把用戶的輸入存儲為一個對象的問題。 注:本文的原文地址為Key differences between Python 2.7.x and Python 3.x 許多 Python 初學者想知道他們應該從 Python ...

    clasnake 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<