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指令运行它,如果程序比较复杂,则一般采用文件方式。

可分为一下步骤:

  1. 编写代码文件(.py)
  2. 打开终端
  3. 进入代码文件所在目录,如:cd 目标目录
  4. 最后使用python命令执行文件名,如:python 文件名(.py)

交互式

交互方式是指我们每写一行python代码,就可以敲回车键来运行代码,在学习python的基本语法并运行一些简单的程序时,这是不错的选择。

可分为一下步骤:

  1. 打开终端
  2. 输入python命令进入交互式,如:python
  3. 进入后直接编写代码并按回车键运行,如:print("hello world")
  4. 离开交互式:输入exit()

执行过程

计算机只能识别机器码(1010),不能识别源代码(python)。

(1) 由源代码转变成机器码的过程分成两类:编译和解释。

(2) 编译:在程序运行之前,通过编译器将源代码变成机器码,例如:C语言。

-- 优点:运行速度快

-- 缺点:开发效率低,不能跨平台。

(3) 解释:在程序运行之时,通过解释器对程序逐行翻译,然后执行,例如Javascript。

-- 优点:开发效率高,可以跨平台;

-- 缺点:运行速度慢。

(4) python是解释型语言,但为了提高运行速度,使用了一种编译的方法。编译之后得到pyc文件,存储了字节码(特定于Python的表现形式,不是机器码)。

python入门

一、注释

通常是对代码的描述信息。

  1. 单行注释:以#号开头。如:# 这是一个注释
  2. 多行注释:三引号开头,三引号结尾。如:"""这是一个注释"""

二、pyc文件

执行Python代码时,如果导入了其他的 .py 文件,那么,执行过程中会自动生成一个与其同名的 .pyc 文件,该文件就是Python解释器编译之后产生的字节码。

ps:代码经过编译可以产生字节码;字节码通过反编译也可以得到代码。

三、变量

  1. 定义:在内存中操作数据的空间。
  2. 语法:具有不同的标识、存储临时数据的内存单元,标识内存单元的符号为变量名(亦称标识符),内存单元中存储的数据就是变量的值。

  3. 复用性

    一个变量可以被多次使用,重复操作一个数据,以提高代码的可读性
点击查看代码
# 计算圆形面积
# 没有变量:
print(2 * 3.14 * 5)
print(3.14 * 5 * 5)
# 使用变量:
r=5
print(2 * 3.14 * r)
print(3.14 * r * r)
  1. 可变性

    一个变量可以被重复赋值,实现对程序状态的调节以适应现实环境的变化



  2. 命名规则

  • 由字母、数字和下划线组成,且不能以数字开头
  • 区分大小写。例如,andy和Andy是不同的变量名
  • 通俗易懂,见名知意。例如,表示姓名,可以使用name。
  • 不能使用关键字命名
  • 如果由两个及以上单词组成,单词与单词之间使用下划线连接。

四、基本输入和输出

1. 输入

input函数:用于接收一个标准输入数据,该函数返回一个字符串类型数据

作用:将终端中用户输入的数据存储在程序中语法:

变量 = input(提示信息)

应用:输入数据

2. 输出

print函数:用于向控制台中输出数据,它可以输出任何类型的数据

作用:将括号中的数据显示在终端中

语法:print(数据)

应用:呈现结果

3. 使用示例

点击查看代码

```
user_name = input("请输入账号:")
password = input("请输入密码:")
print("登录成功!")
```

python开发之路【第二章】:python简介和入门的更多相关文章

  1. 我的Python成长之路---第二天---Python基础(7)---2016年1月9日(晴)

    再说字符串 一.字符串的编码 字符串的编码是个很令人头疼的问题,由于计算机是美国人发明的,他们很理所当然的认为计算机只要能处理127个字母和一些符号就够用了,所以规定了一个字符占用8个比特(bit)也 ...

  2. 我的Python成长之路---第二天---Python基础(8)---2016年1月9日(晴)

    数据类型之字典 一.字典简介 字典dict(dictionary),在其他语言中也成为map,使用键-值(key-value)的形式存储和展现,具有极快的查找速度. 字典的定义 d = {'key': ...

  3. 第二章Python入门

    第二章 Python入门 2.1.简介 Python是著名的"龟叔"(Guido van Rossum)在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言 Pytho ...

  4. [Python笔记][第二章Python序列-复杂的数据结构]

    2016/1/27学习内容 第二章 Python序列-复杂的数据结构 堆 import heapq #添加元素进堆 heapq.heappush(heap,n) #小根堆堆顶 heapq.heappo ...

  5. [Python笔记][第二章Python序列-tuple,dict,set]

    2016/1/27学习内容 第二章 Python序列-tuple tuple创建的tips a_tuple=('a',),要这样创建,而不是a_tuple=('a'),后者是一个创建了一个字符 tup ...

  6. [python笔记][第二章Python序列-list]

    2016/1/27学习内容 第二章 Python序列-list list常用操作 list.append(x) list.extend(L) list.insert(index,x) list.rem ...

  7. Android开发艺术探索——第二章:IPC机制(上)

    Android开发艺术探索--第二章:IPC机制(上) 本章主要讲解Android的IPC机制,首先介绍Android中的多进程概念以及多进程开发模式中常见的注意事项,接着介绍Android中的序列化 ...

  8. Python开发(一):Python介绍与基础知识

    Python开发(一):Python介绍与基础知识 本次内容 一:Python介绍: 二:Python是一门什么语言 三:Python:安装 四:第一个程序 “Hello world” 五:Pytho ...

  9. Windows程序设计(第五版)学习:第二章 Unicode简介

    第二章 Unicode简介 1,Windows通过双字节技术DBCS解决这个问题,代码页定义不同的字符集,称为ANSI字符集,比如日文为CP932,韩文为CP949,繁体中文为CP950,简体中文为C ...

  10. Android开发艺术探索——第二章:IPC机制(中)

    Android开发艺术探索--第二章:IPC机制(中) 好的,我们继续来了解IPC机制,在上篇我们可能就是把理论的知识写完了,然后现在基本上是可以实战了. 一.Android中的IPC方式 本节我们开 ...

随机推荐

  1. HTTP内容编码和HTTP压缩的区别

    HTTP压缩,在HTTP协议中,其实是内容编码的一种. 在http协议中,可以对内容(也就是body部分)进行编码, 可以采用gzip这样的编码. 从而达到压缩的目的. 也可以使用其他的编码把内容搅乱 ...

  2. HTML中,table怎样使用

    <table> 标签用于在HTML中创建表格.表格是一种以行和列的形式组织和显示数据的结构化方式.<table> 标签通常与其他相关标签(如 <tr>.<th ...

  3. CompletableFuture原理及应用场景详解

    1.应用场景 现在我们打开各个APP上的一个页面,可能就需要涉及后端几十个服务的API调用,比如某宝.某个外卖APP上,下面是某个外卖APP的首页.首页上的页面展示会关联很多服务的API调用,如果使用 ...

  4. DevOps系列——Gitlab私服

    Gitlab/GitHub是两兄弟,但GitHub本着共享技术的精神,私有库是要钱滴,而且代码放别人家里,晚上总是有点睡不踏实, 来个代码泄露或者突然被区别对待,比如GitHub断供来自伊朗.叙利亚的 ...

  5. .NET中的线程本地存储(TLS)与AsyncLocal(一)

    一.TLS 线程本地存储(Thread Local Storage),字面意思就是专属某个线程的存储空间.变量大体上分为全局变量和局部变量,一个进程中的所有线程共享地址空间,这个地址空间被划分为几个固 ...

  6. Rubymine搭建Ruby开发环境

    1.下载和安装Ruby 下载链接:https://rubyinstaller.org/downloads/ 安装示意图: 注意勾选图示的两个选项 安装完成后在cmd窗口运行:ruby -v命令显示当前 ...

  7. async/await Task.Delay 和Thread.Sleep的理解

    async/await Task.Delay 和Thread.Sleep的理解 相关学习资料: 第十七节:从状态机的角度async和await的实现原理(新) - Yaopengfei - 博客园 ( ...

  8. 【HUST】网安|操作系统实验|实验一 内核编译、系统调用、编写批处理脚本

    文章目录 目的 任务 前言 一.linux内核编译 非常靠谱的两篇参考文章: 补注: 总结 二.添加新的系统调用 特别靠谱的参考文章: 补注: 1. 我修改的文件: 2. 图中需要敲入的全部代码: 3 ...

  9. Map延伸工具类之“根据value值得到map的key值”“根据value值得到map的keys值”

    Map延伸工具类 /** * 集合类型转换 * */ public class CollectionUtil { /** * 根据value值得到map的key值 * @author wzw * * ...

  10. 代理模式-Proxy(动态代理)

    代理模式(Proxy) 一.作用 又叫"动态代理" 为其他对象提供一种代理以控制对这个对象的访问 二.结构图 三.场景1 远程代理: 也就是为一个对象在不同的地址空间提供局部代表. ...