1.如果你使用了非 ASCII 字符而且碰到了编码错误,记得在最顶端加一行 # -- coding: utf-8 -- 。
2.试着使用更多的格式化字符。例如 %r 就是是非常有用的一个,它的含义是“不管什么都打印出来”。
%r与%s的区别,答案来自stackoverflow
This is a version of Ben James's answer, above:
>>> import datetime
>>> x = datetime.date.today()
>>> print x
2013-01-11
>>>
>>>
>>> print "Today's date is %s ..." % x
Today's date is 2013-01-11 ...
>>>
>>> print "Today's date is %r ..." % x
Today's date is datetime.date(2013, 1, 11) ...
>>>
When I ran this, it helped me see the usefulness of %r.
%r指代的是它所代表的对象
3.为什么python中 两个字符串 用 + 连起来就可以生成一个更长的字符串
每个变量在Python中都是以对象形式存在的,即都是继承于Object。而Object则具有 object.__add__(self, other)这样一个方法。每当处理x+y这一个表达式的时候,将会调用x.__add__(y)。另外为了交换律,还有__radd__方法,也就是用来处理y+x,这样会调用y.__radd__(x)。
4.使用“三引号(triple-quotes)”,也就是 """,你可以在一组三引号之间放入任意多行的文字
5.raw_input和input的区别:
从上面的例子中可以看出来input它会根据用户输入变换相应的类型,而且如果要输入字符和字符串的时候必须要用引号包起来,否则会报输入的变量未定义的错误,我们用pydoc查阅一下input:
input(...)
input([prompt]) -> value
Equivalent to eval(raw_input(prompt)).
所以input() 本质上还是使用 raw_input() 来实现的,只是调用完 raw_input() 之后再调用 eval() 函数
而raw_input则是不管用户输入什么类型的都会转变成字符型.
6.在Python中你可以使用pydoc 后跟着一个函数名去查阅这个函数的意思,就像Linux系统中的man一样,如pydoc raw_input