Python的优缺点
Python的优点很多,简单的可以总结为以下几点。
简单和明确,做一件事只有一种方法。
学习曲线低,跟其他很多语言相比,Python更容易上手。
开放源代码,拥有强大的社区和生态圈。
解释型语言,天生具有平台可移植性。
支持两种主流的编程范式(面向对象编程和函数式编程)都提供了支持。
可扩展性和可嵌入性,可以调用C/C++代码,也可以在C/C++中调用Python。
代码规范程度高,可读性强,适合有代码洁癖和强迫症的人群。
Python的缺点主要集中在以下几点。
执行效率稍低,因此计算密集型任务可以由C/C++编写。
代码无法加密,但是现在很多公司都不销售卖软件而是销售服务,这个问题会被淡化。
在开发时可以选择的框架太多(如Web框架就有100多个),有选择的地方就有错误。
Python的应用领域
目前Python在Web应用开发、云基础设施、DevOps、网络爬虫开发、数据分析挖掘、机器学习等领域都有着广泛的应用,因此也产生了Web后端开发、数据接口开发、自动化运维、自动化测试、科学计算和可视化、数据分析、量化交易、机器人开发、图像识别和处理等一系列的职位.
本人主要感兴趣的有web开发和数据挖掘。
Linux环境下安装python3.x
Linux环境自带了Python 3.x版本,
在linux系统下:
代码中的注释
注释是编程语言的一个重要组成部分,用于在源代码中解释代码的作用从而增强程序的可读性和可维护性,当然也可以将源代码中不需要参与运行的代码段通过注释来去掉,这一点在调试程序的时候经常用到。注释在随源代码进入预处理器或编译时会被移除,不会在目标代码中保留也不会影响程序的执行结果。
单行注释 (以#和空格开头的部分)
多行注释 (三个引号开头,三个引号结尾)-(!import)
示例:
注:该处使用的时jupyter notebook工具
练习
- import this
听说这是”python之禅”,里面讲述的道理不仅仅适用于Python,也适用于其他编程语言。
- 学习使用turtle在屏幕上绘制图形。
trutle英语翻译为海龟、人名:特特尔,理解:python绘图就像海龟在海中绘制美丽的图像。哈哈!
1) turtle.setup() 函数用于启动一个图形窗口,它有四个参数,turtle.setup(width,height,startx,starty),分别是:启动窗口的宽度和高度,表示窗口启动时,窗口左上角在屏幕中的坐标位置。向左为横坐标,向下为纵坐标。
2) turtle.pensize()函数表示运动轨迹的宽度。它包含一个输入参数,即多少像素。
3) turtle.pencolor()函数表示运动轨迹的颜色。它包含一个输入参数,
即想要的颜色。
4) turtle.seth()函数表示启动时运动的方向。它包含一个输入参数,是角度值。
5) turtle.circle()函数表示绘制的图形为圆形,它包含两个参数,rad描述轨迹半径的位置,angle表示沿着圆形爬行的弧度值。
6) turtle.fd()函数也可以用turtle.forward()表示,表示向前直线移动,它有一个参数表示移动的距离。
主要是参考他人代码理解一波。
示例:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58from turtle import *
def HSB2RGB(hues):
hues = hues * 3.59 #100转成359范围
rgb=[0.0,0.0,0.0]
i = int(hues/60)%6
f = hues/60 -i
if i == 0:
rgb[0] = 1; rgb[1] = f; rgb[2] = 0
elif i == 1:
rgb[0] = 1-f; rgb[1] = 1; rgb[2] = 0
elif i == 2:
rgb[0] = 0; rgb[1] = 1; rgb[2] = f
elif i == 3:
rgb[0] = 0; rgb[1] = 1-f; rgb[2] = 1
elif i == 4:
rgb[0] = f; rgb[1] = 0; rgb[2] = 1
elif i == 5:
rgb[0] = 1; rgb[1] = 0; rgb[2] = 1-f
return rgb
def rainbow():
hues = 0.0
color(1,0,0)
#绘制彩虹
hideturtle()
speed(100)
pensize(3)
penup()
goto(-400,-300)
pendown()
right(110)
for i in range (100):
circle(1000)
right(0.13)
hues = hues + 1
rgb = HSB2RGB(hues)
color(rgb[0],rgb[1],rgb[2])
penup()
def main():
setup(800, 600, 0, 0)
bgcolor((0.8, 0.8, 1.0))
tracer(False)
rainbow()
#输出文字
tracer(False)
goto(100,-100)
pendown()
color("red")
write("菜鸟一号",align="center",
font=("Script MT Bold", 80, "bold"))
tracer(True)
mainloop()
if __name__ == "__main__":
main()
运行结果: