Python变异变异最佳实践

时间:2017-04-22 03:18:09

标签: python string

让我们说我将一个变量传递给一个函数,我想确保它的格式正确,以供我最终使用,同时考虑几种可能不需要的格式。

实施例;我想只存储url地址的小写表示,不包含http://或https://。

def standardize(url):
    # Lowercase
    temp_url = url
    url = temp_url.lower()

    # Remove 'http://'
    if 'http://' in url:
        temp_url = url
        url = temp_url.replace('http://', '')

    if 'https://' in url:
        temp_url = url
        url = temp_url.replace('https://', '')

    return url

我只是在侵犯新手的头衔,并想知道是否有更多的pythonic方法来实现这种类型的过程?

最终目标是网址的转换https://myurl.com/RANDoM - > myurl.com/random

url字符串格式化的应用没有任何特别的重要性。

2 个答案:

答案 0 :(得分:3)

一个简单的<...> >>> ps=parse_expr(s) >>> ps.free_symbols {a,b,c,x} >>> x in _ False >>> diff(ps,x) 0 >>> ps=parse_expr(s,locals()) >>> x in ps.free_symbols True >>> diff(ps,x) -ab(−2c+2x)e−b(−c+x)2 可以解决问题:

re.sub

答案 1 :(得分:1)

def standardize(url):
    return url.lower().replace("https://","").replace("http://","")

这就像我能做到的那么简单,但是,链接有点难看。

如果你想导入正则表达式,也可以这样做:

import re

def standardize(url):
    return re.sub("^https?://", "", url.lower())