两个 Python 的冷技巧

标签: python 技巧 | 发表时间:2011-09-20 21:23 | 作者:lanphaday duyue
出处:http://blog.csdn.net/lanphaday

记得刚开始工作的时候,老大给我们上 C++ 基础课,告诉我们字符串字面量可以换行(如下代码),感觉真是如梦如幻。

#include <stdio.h>

int main(int argc, char** argv)
{
        char* w = "hello"
                " "
                "world."
                ;
        printf("%s", w);
        return 0;
}
输出:

hello world.
后来在写了很久的 Python 以后,才知道 Python 其实也可以的:

>>> t = ('hello'
... ' '
... 'world')
>>> t
'hello world'
这个特性很有用,能够把超长的代码优雅地分为几行。记得以前在拼 SQL 语言、写日志条目的时候总为代码行长度超过 78 感到纠结(见我们的编程规范:http://blog.csdn.net/lanphaday/article/details/6601123),现在没有压力啦。


在写 absolute32(见:http://blog.csdn.net/lanphaday/article/details/6762023)的测试代码的时候,为了让测试代码兼容 Python2.x/3.x 两大版本,引入了一砣丑陋的代码:

if sys.version < '3':
        exec("chinese = unicode('赖勇浩', 'utf-8')")
else:
        exec("chinese = '赖勇浩'")
这是因为在 Python2.x 中
chinese = '赖勇浩'
的编码不是 unicode 的,而在 Python3.x 中取消了字符串字面量的前缀 u,所以
chinese = u'赖勇浩'
又直接语法错误,当时只好写下了 exec 的代码根据不同的版本来进行编译。后来才知道 Python2.6 中引入了 unicode_literals,可以很方便地写 2.x/3.x 兼容的代码:

>>> x = '中国'
>>> x
'\xe4\xb8\xad\xe5\x9b\xbd'
>>> from __future__ import unicode_literals
>>> y = '中国' 
>>> y
u'\u4e2d\u56fd'
这样,我那砣丑代码也可以美化掉啦!

作者:lanphaday 发表于2011-9-20 14:23:35 原文链接
阅读:190 评论:0 查看评论

相关 [python 技巧] 推荐:

两个 Python 的冷技巧

- duyue - 赖勇浩的编程私伙局
记得刚开始工作的时候,老大给我们上 C++ 基础课,告诉我们字符串字面量可以换行(如下代码),感觉真是如梦如幻. 后来在写了很久的 Python 以后,才知道 Python 其实也可以的:. 这个特性很有用,能够把超长的代码优雅地分为几行. 记得以前在拼 SQL 语言、写日志条目的时候总为代码行长度超过 78 感到纠结(见我们的编程规范:http://blog.csdn.net/lanphaday/article/details/6601123),现在没有压力啦.

Python实用技巧-成为Pythoner必经之路

- shuangxi - ITeye论坛最新讨论
    本文主要记录 Python 中一些常用技巧,本文重点描述的是告诉你怎么写才是更好.   如果你并不熟悉Python语法,希望你能在下面代码片段中看到Python的简单、优雅; 如果你象我这样,对 Python 有兴趣或并正在学习,我相信下面的技巧并不会让你失望; 如果你已经是一名 Pythoner ,那么很乐于你分享你的经验和技巧.

dropbox讲python

- chuang - Initiative
dropbox定制优化CPython虚拟机,自己搞了个malloc调度算法. 那个 !!!111cos(0). 期待这次PyCon China 2011.

Python调试

- - 企业架构 - ITeye博客
原文地址: http://blog.csdn.net/xuyuefei1988/article/details/19399137. 1、下面网上收罗的资料初学者应该够用了,但对比IBM的Python 代码调试技巧:. IBM:包括 pdb 模块、利用 PyDev 和 Eclipse 集成进行调试、PyCharm 以及 Debug 日志进行调试:.

Python WSGI 初探

- - 坚实的幻想
在构建 Web 应用时,通常会有 Web Server 和 Application Server 两种角色. 其中 Web Server 主要负责接受来自用户的请求,解析 HTTP 协议,并将请求转发给 Application Server,Application Server 主要负责处理用户的请求,并将处理的结果返回给 Web Server,最终 Web Server 将结果返回给用户.

Python实现逻辑回归(Logistic Regression in Python)

- - 神刀安全网
Logistic Regression in Python ,作了中文翻译,并相应补充了一些内容. 本文并不研究逻辑回归具体算法实现,而是使用了一些算法库,旨在帮助需要用Python来做逻辑回归的训练和预测的读者快速上手. 逻辑回归是一项可用于预测二分类结果(binary outcome)的统计技术,广泛应用于金融、医学、犯罪学和其他社会科学中.

python 下载文件

- Eric - python相关的python 教程和python 下载你可以在老王python里寻觅
之前给大家分享的python 多线程抓取网页,我觉的大家看了以后,应该会对python 抓取网页有个很好的认识,不过这个只能用python 来抓取到网页的源代码,如果你想用做python 下载文件的话,上面的可能就不适合你了,最近我在用python 做文件下载的时候就遇到这个问题了,不过最终得以解决,为了让大家以后碰过这个问题有更好的解决办法,我把代码发出来:.

python代码调试

- - 阿里古古
【转自: http://blog.csdn.net/luckeryin/article/details/4477233】. 本文讨论在没有方便的IDE工具可用的情况下,使用pdb调试python程序. 例如,有模拟税收计算的程序:. debug_demo函数计算4500的入账所需的税收. 在需要插入断点的地方,加入红色部分代码:如果_DEBUG值为True,则在该处开始调试(加入_DEBUG的原因是为了方便打开/关闭调试).

python编程规范

- - 互联网 - ITeye博客
@FileName: @Author:[email protected] @Create date: @description:用一行文字概述模块或脚本,用句号结尾. 不影响编码的效率,不与大众习惯冲突.. 使代码的逻辑更清晰,更易于理解..   *所有的 Python 脚本文件都应在文件头标上如下标识或其兼容格式的标识.

Python 编程速成

- - SegmentFault 最新的文章
本文首发微信公众号:前端先锋. 欢迎关注,每天都给你推送新鲜的前端技术文章. Python是一种非常流行的脚本语言,而且功能非常强大,几乎可以做任何事情,比如爬虫、网络工具、科学计算、树莓派、Web开发、游戏等各方面都可以派上用场. 同时无论在哪种平台上,都可以用 Python 进行系统编程. 机器学习可以用一些 Python 库来实现,比如人工智能常用的 TensorFlow.