python开发之路【第二章】:python简介和入门
Python简介
python起源到广泛应用
Python 由吉多・范罗苏姆(Guido van Rossum)缔造。1989 年圣诞季,身处阿姆斯特丹的他,为了打发闲暇时光,决定开发一款新脚本解释程序,作为 ABC 语言的传承之作 。
根据数据平台Kaggle发布的数据科学调查报告,Python是数据科学家和人工智能从业者使用最多的语言。
python介绍
定义
Python 是一种高级、解释型、面向对象的编程语言。它以简洁易读的语法和丰富的标准库著称,被誉为 “可执行的伪代码”,使开发者能够用更少的代码表达想法。Python 采用动态类型系统和自动内存管理,支持多种编程范式(过程式、面向对象、函数式),并提供了高效的高级数据结构(如列表、字典、集合)。
优势
应用领域
作为一门功能强大且简单易学的编程语言,Python 主要应用在下面几个领域。
1. Web 开发
Python 是 Web 开发的主流语言,与 JS、PHP 等广泛使用的语言相比,Python 的类库丰富、使用方便,能够为一个需求提供多种方案;此外,Python 支持最新的 XML 技术,具有强大的数据处理能力,因此 Python 在 Web 开发中占有一席之地。Python 为 Web 开发领域提供的框架有 Django、Flask、Tornado、Web2py 等。
2. 科学计算与数据分析
随着 NumPy、SciPy、Matplotlib 等众多库的引入和完善,Python 越来越适合进行科学计算和数据分析。Python 不仅支持各种数学运算,还可以绘制高质量的 2D 和 3D 图像。与科学计算领域最流行的商业软件 Matlab 相比,Python 的应用范围更广泛,可以处理的文件和数据的类型更丰富。
3. 自动化运维
早期运维工程师大多使用 Shell 编写脚本,但如今 Python 几乎可以说是运维工程师的首选编程语言。在很多操作系统中,Python 是标准的系统组件,大多数 Linux 发行版和 Mac OS X 都集成了 Python,可以在终端下直接运行 Python。Python 标准库包含了多个调用操作系统功能的库:通过第三方软件包 pywin32,Python 能够访问 Windows 的 COM 服务及其他 Windows API;通过 IronPython,Python 程序能够直接调用.NET Framework。一般来说,用 Python 编写的系统管理脚本在可读性、性能、代码重用度、扩展性这几方面都优于 Shell 脚本。
4. 网络爬虫
网络爬虫可以在很短的时间内,获取互联网上有用的数据,节省大量的人力资源。Python 自带的 urllib 库、第三方 requests 库、Scrapy 框架、pyspider 框架等让网络爬虫变得非常简单。
5. 游戏开发
很多游戏开发者先利用 Python 或 Lua 编写游戏的逻辑代码,再使用 C++编写诸如图形显示等对性能要求较高的模块。Python 标准库提供了 Pygame 模块,用户使用该模块可以制作 2D 游戏。
6. 人工智能
Python 是人工智能领域的主流编程语言,人工智能领域神经网络方向流行的神经网络框架 TensorFlow 就采用了 Python 语言。
就业岗位
Python程序执行方式
python的执行方式有两种:交互式与文件式。
文件式
文件方式是指先编写号python代码文件(.py),然后通过python指令运行它,如果程序比较复杂,则一般采用文件方式。
可分为一下步骤:
- 编写代码文件(.py)
- 打开终端
- 进入代码文件所在目录,如:cd 目标目录
- 最后使用python命令执行文件名,如:python 文件名(.py)
交互式
交互方式是指我们每写一行python代码,就可以敲回车键来运行代码,在学习python的基本语法并运行一些简单的程序时,这是不错的选择。
可分为一下步骤:
- 打开终端
- 输入python命令进入交互式,如:python
- 进入后直接编写代码并按回车键运行,如:print("hello world")
- 离开交互式:输入exit()
执行过程
计算机只能识别机器码(1010),不能识别源代码(python)。
(1) 由源代码转变成机器码的过程分成两类:编译和解释。
(2) 编译:在程序运行之前,通过编译器将源代码变成机器码,例如:C语言。
-- 优点:运行速度快
-- 缺点:开发效率低,不能跨平台。
(3) 解释:在程序运行之时,通过解释器对程序逐行翻译,然后执行,例如Javascript。
-- 优点:开发效率高,可以跨平台;
-- 缺点:运行速度慢。
(4) python是解释型语言,但为了提高运行速度,使用了一种编译的方法。编译之后得到pyc文件,存储了字节码(特定于Python的表现形式,不是机器码)。
python入门
一、注释
通常是对代码的描述信息。
- 单行注释:以#号开头。如:# 这是一个注释
- 多行注释:三引号开头,三引号结尾。如:"""这是一个注释"""
二、pyc文件
执行Python代码时,如果导入了其他的 .py 文件,那么,执行过程中会自动生成一个与其同名的 .pyc 文件,该文件就是Python解释器编译之后产生的字节码。
ps:代码经过编译可以产生字节码;字节码通过反编译也可以得到代码。
三、变量
- 定义:在内存中操作数据的空间。
- 语法:具有不同的标识、存储临时数据的内存单元,标识内存单元的符号为变量名(亦称标识符),内存单元中存储的数据就是变量的值。
- 复用性
一个变量可以被多次使用,重复操作一个数据,以提高代码的可读性
点击查看代码
# 计算圆形面积
# 没有变量:
print(2 * 3.14 * 5)
print(3.14 * 5 * 5)
# 使用变量:
r=5
print(2 * 3.14 * r)
print(3.14 * r * r)
可变性
一个变量可以被重复赋值,实现对程序状态的调节以适应现实环境的变化
命名规则
- 由字母、数字和下划线组成,且不能以数字开头
- 区分大小写。例如,andy和Andy是不同的变量名
- 通俗易懂,见名知意。例如,表示姓名,可以使用name。
- 不能使用关键字命名
- 如果由两个及以上单词组成,单词与单词之间使用下划线连接。
四、基本输入和输出
1. 输入
input函数:用于接收一个标准输入数据,该函数返回一个字符串类型数据
作用:将终端中用户输入的数据存储在程序中语法:
变量 = input(提示信息)
应用:输入数据
2. 输出
print函数:用于向控制台中输出数据,它可以输出任何类型的数据
作用:将括号中的数据显示在终端中
语法:print(数据)
应用:呈现结果
3. 使用示例
点击查看代码
```
user_name = input("请输入账号:")
password = input("请输入密码:")
print("登录成功!")
```
python开发之路【第二章】:python简介和入门的更多相关文章
- 我的Python成长之路---第二天---Python基础(7)---2016年1月9日(晴)
再说字符串 一.字符串的编码 字符串的编码是个很令人头疼的问题,由于计算机是美国人发明的,他们很理所当然的认为计算机只要能处理127个字母和一些符号就够用了,所以规定了一个字符占用8个比特(bit)也 ...
- 我的Python成长之路---第二天---Python基础(8)---2016年1月9日(晴)
数据类型之字典 一.字典简介 字典dict(dictionary),在其他语言中也成为map,使用键-值(key-value)的形式存储和展现,具有极快的查找速度. 字典的定义 d = {'key': ...
- 第二章Python入门
第二章 Python入门 2.1.简介 Python是著名的"龟叔"(Guido van Rossum)在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言 Pytho ...
- [Python笔记][第二章Python序列-复杂的数据结构]
2016/1/27学习内容 第二章 Python序列-复杂的数据结构 堆 import heapq #添加元素进堆 heapq.heappush(heap,n) #小根堆堆顶 heapq.heappo ...
- [Python笔记][第二章Python序列-tuple,dict,set]
2016/1/27学习内容 第二章 Python序列-tuple tuple创建的tips a_tuple=('a',),要这样创建,而不是a_tuple=('a'),后者是一个创建了一个字符 tup ...
- [python笔记][第二章Python序列-list]
2016/1/27学习内容 第二章 Python序列-list list常用操作 list.append(x) list.extend(L) list.insert(index,x) list.rem ...
- Android开发艺术探索——第二章:IPC机制(上)
Android开发艺术探索--第二章:IPC机制(上) 本章主要讲解Android的IPC机制,首先介绍Android中的多进程概念以及多进程开发模式中常见的注意事项,接着介绍Android中的序列化 ...
- Python开发(一):Python介绍与基础知识
Python开发(一):Python介绍与基础知识 本次内容 一:Python介绍: 二:Python是一门什么语言 三:Python:安装 四:第一个程序 “Hello world” 五:Pytho ...
- Windows程序设计(第五版)学习:第二章 Unicode简介
第二章 Unicode简介 1,Windows通过双字节技术DBCS解决这个问题,代码页定义不同的字符集,称为ANSI字符集,比如日文为CP932,韩文为CP949,繁体中文为CP950,简体中文为C ...
- Android开发艺术探索——第二章:IPC机制(中)
Android开发艺术探索--第二章:IPC机制(中) 好的,我们继续来了解IPC机制,在上篇我们可能就是把理论的知识写完了,然后现在基本上是可以实战了. 一.Android中的IPC方式 本节我们开 ...
随机推荐
- HTTP内容编码和HTTP压缩的区别
HTTP压缩,在HTTP协议中,其实是内容编码的一种. 在http协议中,可以对内容(也就是body部分)进行编码, 可以采用gzip这样的编码. 从而达到压缩的目的. 也可以使用其他的编码把内容搅乱 ...
- HTML中,table怎样使用
<table> 标签用于在HTML中创建表格.表格是一种以行和列的形式组织和显示数据的结构化方式.<table> 标签通常与其他相关标签(如 <tr>.<th ...
- CompletableFuture原理及应用场景详解
1.应用场景 现在我们打开各个APP上的一个页面,可能就需要涉及后端几十个服务的API调用,比如某宝.某个外卖APP上,下面是某个外卖APP的首页.首页上的页面展示会关联很多服务的API调用,如果使用 ...
- DevOps系列——Gitlab私服
Gitlab/GitHub是两兄弟,但GitHub本着共享技术的精神,私有库是要钱滴,而且代码放别人家里,晚上总是有点睡不踏实, 来个代码泄露或者突然被区别对待,比如GitHub断供来自伊朗.叙利亚的 ...
- .NET中的线程本地存储(TLS)与AsyncLocal(一)
一.TLS 线程本地存储(Thread Local Storage),字面意思就是专属某个线程的存储空间.变量大体上分为全局变量和局部变量,一个进程中的所有线程共享地址空间,这个地址空间被划分为几个固 ...
- Rubymine搭建Ruby开发环境
1.下载和安装Ruby 下载链接:https://rubyinstaller.org/downloads/ 安装示意图: 注意勾选图示的两个选项 安装完成后在cmd窗口运行:ruby -v命令显示当前 ...
- async/await Task.Delay 和Thread.Sleep的理解
async/await Task.Delay 和Thread.Sleep的理解 相关学习资料: 第十七节:从状态机的角度async和await的实现原理(新) - Yaopengfei - 博客园 ( ...
- 【HUST】网安|操作系统实验|实验一 内核编译、系统调用、编写批处理脚本
文章目录 目的 任务 前言 一.linux内核编译 非常靠谱的两篇参考文章: 补注: 总结 二.添加新的系统调用 特别靠谱的参考文章: 补注: 1. 我修改的文件: 2. 图中需要敲入的全部代码: 3 ...
- Map延伸工具类之“根据value值得到map的key值”“根据value值得到map的keys值”
Map延伸工具类 /** * 集合类型转换 * */ public class CollectionUtil { /** * 根据value值得到map的key值 * @author wzw * * ...
- 代理模式-Proxy(动态代理)
代理模式(Proxy) 一.作用 又叫"动态代理" 为其他对象提供一种代理以控制对这个对象的访问 二.结构图 三.场景1 远程代理: 也就是为一个对象在不同的地址空间提供局部代表. ...