这篇文档是一篇个人学习Python的一些遗漏或者记得不熟悉的东西,不成系统。
1.输出
1.1 格式化输出
python的格式化输出主要有以下几种方式:
- 将变量直接放入大括号
my_name="Lala"
print(f"Let's talk about {my_name}.")
- 使用format函数+{}
formatter = "{} {} {}"
print(formatter.format("one", True, 1))
- Python2 的方式
my_name="Lala"
print("Let's talk about %s."% my_name)
1.2 print不换行
正常情况下,我们使用print函数,会产生换行符,例如:
print("abc")
print("edf")
执行后,会输出:
abc
edf
如果要想不生成换行符,则需要添加end
参数:
print("abc", end='')
print("edf")
2. 解码和编码
《笨办法学python3》有一个关于解码和编码的小口诀——“解码字符串,编码字节串”(Decode bytes, encode strings, DBES)
3. Boolean的返回值
Python和很多编程语言一样,都是给布尔表达式返回两个被操作对象中的一个,而非True或False。这意味着,如果你写了Flase and 1
,得到的是第一个操作数(False
),而非第二个操作数(1),但如果你写的是True and 1
,得到的将是第二个操作数(1)
---《笨办法学python3》
True and 1
上述表达式的返回值是1
False and 1
上述表达式的返回值是Fasle
3. 字典
3.1 有序字典
使用collections.OrderedDict,暂时用不到,先记录下来
4. 列表
列表复制:
result = l1[:]
5. 面向对象
Python3的面向对象的一些基本原则:
- 不惜一切代价避免多重继承
- 如果一些代码在不同的位置和场合会用到,就用组合把它们做成模块
- 只有代码的可复用部分之间有清楚的关联,可以通过一个单独的共性联系起来的时候,才使用继承。
- 类应该使用"驼峰式大小写"(camel case)
- init不应该做太多的事情
- 其他函数应该使用下划线分割词
- 不要使用来自模块的变量或者全局变量