码迷,mamicode.com
首页 > 其他好文 > 详细

ARTS-week10

时间:2020-01-20 22:36:17      阅读:103      评论:0      收藏:0      [点我收藏+]

标签:ast   for   number   href   适合   review   文章   rom   ever   

Algorithm

判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

Palindrome Number

class Solution:
    # 解1,时间复杂度O(n)
    def isPalindrome1(self, x: int) -> bool:
        return str(x) == str(x)[::-1]
    
    # 解2,时间复杂度O(log10(n))
    def isPalindrome2(self, x: int) -> bool:
    if x < 0 or (x % 10 == 0 and x != 0):
        return False
        
    revertedNumber = 0
    while x > revertedNumber:
        revertedNumber = x % 10 + revertedNumber * 10
        x //= 10
        
        return (x == revertedNumber // 10) or (x == revertedNumber)

罗马数字包含以下七种字符:?I,?V,?X,?L,C,D?和?M。

给定一个罗马数字,将其转换成整数。输入确保在 1?到 3999 的范围内。
Roman to Integer

class Solution:
    # 解1,时间复杂度O(n)
    def romanToInt(self, s: str) -> int:
        roman_dir = {"I":1,"V":5,"X":10,"L":50,"C":100,"D":500,"M":1000}
        sum = roman_dir[s[-1]]
        for i in range(len(s)-1):
            if roman_dir[s[i]] >= roman_dir[s[i+1]]:
                sum += roman_dir[s[i]]
            else:
                sum -= roman_dir[s[i]]
        return sum

Review

Learn Vim Progressively

作者将学习VIM分成4个阶段,分别是

  1. Survive
  2. Feel comfortable
  3. Feel Better, Stronger, Faster
  4. Use superpowers of vim
    从浅入深,非常适合用于学习vim用,按照作者的话说,“
    By the end of this journey, you’ll become a vim superstar.”:)

Tip

学习了一种更加强大的断言方式,harcrest。相比于unittest/pytest 更加强大灵活。
常用的几个断言如下:

  • equalTo:判断相等
  • closeTo:接近于多少
  • anyOf:后面可跟上多个匹配器,只要其中任何一个满足条件就通过
  • allOf:后面可跟上多个匹配器,只要其中任何一个不满足条件都不通过

官方文档:PyHamcrest

Share

PageObject
Martin Fowler在2013年就提出了PO模式,现在来看这篇文章仍不显得过时。

ARTS-week10

标签:ast   for   number   href   适合   review   文章   rom   ever   

原文地址:https://www.cnblogs.com/felixqiang/p/12219436.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!