Python3.6进阶教程14-一行式Python命令

本章节,我将向大家展示一些一行式的Python命令,这些程序将对你非常有帮助。

简易Web Server

你是否想过通过网络快速共享文件?好消息,Python为你提供了这样的功能。进入到你要共享文件的目录下并在命令行中运行下面的代码:

    # Python 2
    python -m SimpleHTTPServer

    # Python 3
    python -m http.server

漂亮的打印

你可以在Python REPL漂亮的打印出列表和字典。这里是相关的代码:

    from pprint import pprint

    my_dict = {'name': 'Yasoob', 'age': 'undefined', 'personality': 'awesome'}
    pprint(my_dict)

这种方法在字典上更为有效。此外,如果你想快速漂亮的从文件打印出json数据,那么你可以这么做:

    cat file.json | python -m json.tool

脚本性能分析
这可能在定位你的脚本中的性能瓶颈时,会非常奏效:

    python -m cProfile my_script.py

备注:cProfile是一个比profile更快的实现,因为它是用c写的

CSV转换为json

在命令行执行这条指令

    python -c "import csv,json;print json.dumps(list(csv.reader(open('csv_file.csv'))))"

确保更换csv_file.csv为你想要转换的csv文件

列表辗平

您可以通过使用itertools包中的itertools.chain.from_iterable轻松快速的辗平一个列表。下面是一个简单的例子:

    a_list = [[1, 2], [3, 4], [5, 6]]
    print(list(itertools.chain.from_iterable(a_list)))
    # Output: [1, 2, 3, 4, 5, 6]

    # or
    print(list(itertools.chain(*a_list)))
    # Output: [1, 2, 3, 4, 5, 6]

一行式的构造器

避免类初始化时大量重复的赋值语句

    class A(object):
        def __init__(self, a, b, c, d, e, f):
            self.__dict__.update({k: v for k, v in locals().items() if k != 'self'})

更多的一行方法请参考Python官方文档。

郑重声明:

1 本资源来源于互联网,资源的版权归资源原作者所持有,受《中华人民共和国著作权法》等相关法律保护。

2 由于无法和原作者取得联系,所以上传的部分资源无法先通过原作者的同意就分享给大家了,如本资源侵犯了您(原作者)的权益,请联系我们(微信号 xiaohaimei1989),我们会立马删除您的资源,并向您表达诚挚的歉意!

3 本站是一个公益型网站,分享资源的目的在于传播知识,分享知识,收取一点点打赏的辛苦费是用于网站的日常运营开支,并非用于商业用途。

4 本站资源只提供学习和参考研究使用,使用过后请在第一时间内删除。本站不承担资源被单位或个人商用带来的法律责任。

发表评论