- Day01
IDLE - 自带的集成开发工具,体验很差
IPython - 更好的交互式编程工具,通过ipython命令启动,或者通过jupyter启动
Anaconda - 一站式的数据科学神器
PyCharm - Python开发神器
没有使用过的:
Sublime - 文本编辑神器
安装包管理工具。
安装插件。通过Preference菜单的Package Control或快捷键Ctrl+Shift+P打开命令面板,在面板中输入Install Package就可以找到安装插件的工具,然后再查找需要的插件。我们推荐大家安装以下几个插件
SublimeCodeIntel -代码自动补全工具插件。
Emmet - 前端开发代码模板插件。
Git - 版本控制工具插件。
Python PEP8 Autoformat - PEP8规范自动格式化插件。
ConvertToUTF8 - 将本地编码转换为UTF-8。
Gitpod - 一键式在线开发工具
只需单击即可在GitHub上打开任何Python项目。
- Day02
变量命名
PEP 8要求: 用小写字母拼写,多个单词用下划线连接。 受保护的实例属性用单个下划线开头(后面会讲到)。
私有的实例属性用两个下划线开头(后面会讲到)
在对变量类型进行转换时可以使用Python的内置函数(准确的说下面列出的并不是真正意义上的函数,而是后面我们要讲到的创建对象的构造方法)。
int()
:将一个数值或字符串转换成整数,可以指定进制。
float()
:将一个字符串转换成浮点数。
str()
:将指定的对象转换成字符串形式,可以指定编码。
chr()
:将整数转换成该编码对应的字符串(一个字符)。
ord()
:将字符串(一个字符)转换成对应的编码(整数)。
身份运算符 is
is not
成员运算符 in
not in
- Day03
“Flat is better than
nested.”,之所以提出这个观点是因为嵌套结构的嵌套层次多了之后会严重的影响代码的可读性,如果可以使用扁平化的结构就不要去用嵌套。
random
模块的randint
函数生成指定范围的随机数来模拟掷骰子
- Day04
for-in循环
range
可以用来产生一个不变的数值序列,而且这个序列通常都是用在循环中的,例如:
range(101)
可以产生一个0到100的整数序列。
range(1, 100)
可以产生一个1到99的整数序列。
range(1, 100, 2)
可以产生一个1到99的奇数序列,其中的2是步长,即数值序列的增量。
while循环
上面的代码中使用了break
关键字来提前终止循环,需要注意的是break
只能终止它所在的那个循环,这一点在使用嵌套的循环结构(下面会讲到)需要引起注意。除了break
之外,还有另一个关键字是continue
,它可以用来放弃本次循环后续的代码直接让循环进入下一轮。
- Day05
寻找“水仙花数”。
z = int(input('输入:'))
a = z % 10
b = z // 10 % 10
c = z //100
if z == a ** 3 + b ** 3 + c ** 3:
print('True')
寻找“完美数”。
import math
z = int(input('输入:'))
sum = 0
for factor in range(1,int(math.sqrt(num)) + 1):
if z % factor == 0:
sum += factor
if factor > 1 and z / factor != factor:
sum += z / factor
if sum == z:
print("True")
“百钱百鸡”问题。
'''
百钱百鸡
公鸡x,母鸡y,小鸡z
一只公鸡5块,一只母鸡3块,三只小鸡1块
'''
for x in range(21):
for y in range(33):
if 5*x + 3*y + z / 3 ==100:
print(x,y,z)
生成“斐波拉切数列”。
a = 0
b = 1
for _ in range(20):
(a, b) = (b, a + b)
print(a, end=' ')