第一个 Python 程序

目标

  • 第一个 HelloPython 程序

  • Python 2.x3​​.x 版本简介

  • 执行 Python 程序的三种方式

    • 解释器 —— python / python3

    • 交互式 —— ipython

    • 集成开发环境 —— PyCharm

01. 第一个 HelloPython 程序

1.1 Python 源程序的基本概念

  1. Python 源程序就是一个特殊格式的文本文件,可以使用任意文本编辑软件Python 的开发

  2. Python 程序的 文件扩展名 通常都是 .py

1.2 演练步骤

  • 在桌面下,新建 认识Python 目录

  • 认识Python 目录下新建 01-HelloPython.py 文件

  • 编辑 01-HelloPython.py 并且输入以下内容:

print("hello python")
print("hello world")print("hello world")
print("hello python: Ideas shape the course of history.")
print("想法影响着历史进程。")
  • 在终端中输入以下命令执行 01-HelloPython.py

$ python 01-HelloPython.py

printpython 中我们学习的第一个 函数

print 函数的作用,可以把 "" 内部的内容,输出到屏幕上

1.3 演练扩展 —— 认识错误(BUG)

关于错误

  • 编写的程序不能正常执行,或者执行的结果不是我们期望的

  • 俗称 BUG,是程序员在开发时非常常见的,初学者常见错误的原因包括:

    1. 手误

    2. 对已经学习过的知识理解还存在不足

    3. 对语言还有需要学习和提升的内容

  • 在学习语言时,不仅要学会语言的语法,而且还要学会如何认识错误和解决错误的方法

每一个程序员都是在不断地修改错误中成长的

好奇心和探索可以使我们学更多的东西。

第一个演练中的常见错误

  • 1> 手误,例如使用 pirnt("Hello world")

NameError: name 'pirnt' is not defined
​
名称错误:'pirnt' 名字没有定义
  • 2> 将多条 print 写在一行

SyntaxError: invalid syntax
​
语法错误:语法无效

每行代码负责完成一个动作

  • 3> 缩进错误

IndentationError: unexpected indent
​
缩进错误:不期望出现的缩进
  • Python 是一个格式非常严格的程序设计语言

  • 目前而言,大家记住每行代码前面都不要增加空格

  • 4> python 2.x 默认不支持中文

目前市场上有两个 Python 的版本并存着,分别是 Python 2.xPython 3.x

  • Python 2.x 默认不支持中文,具体原因,等到介绍 字符编码 时给大家讲解

  • Python 2.x 的解释器名称是 python

  • Python 3.x 的解释器名称是 python3

SyntaxError: Non-ASCII character '\xe4' in file 01-HelloPython.py on line 3,
but no encoding declared;
see http://python.org/dev/peps/pep-0263/ for details
​
语法错误: 在 01-HelloPython.py 中第 3 行出现了非 ASCII 字符 '\xe4',但是没有声明文件编码
请访问 http://python.org/dev/peps/pep-0263/ 了解详细信息
  • ASCII 字符只包含 256 个字符,不支持中文

  • 有关字符编码的问题,后续会讲

单词列表

* error 错误
* name 名字
* defined 已经定义
* syntax 语法
* invalid 无效
* Indentation 索引
* unexpected 意外的,不期望的
* character 字符
* line 行
* encoding 编码
* declared 声明
* details 细节,详细信息
* ASCII 一种字符编码

02. Python 2.x3​​.x 版本简介

目前市场上有两个 Python 的版本并存着,分别是 Python 2.xPython 3.x

新的 Python 程序建议使用 Python 3.0 版本的语法

  • Python 2.x 是 过去的版本

    • 解释器名称是 python

  • Python 3.x 是 现在和未来 主流的版本

    • 解释器名称是 python3

    • 相对于 Python 的早期版本,这是一个 较大的升级

    • 为了不带入过多的累赘,Python 3.0 在设计的时候 没有考虑向下兼容

      • 许多早期 Python 版本设计的程序都无法在 Python 3.0 上正常执行

    • Python 3.0 发布于 2008 年

    • 到目前为止,Python 3.0 的稳定版本已经有很多年了

  • 为了照顾现有的程序,官方提供了一个过渡版本 —— Python 2.6(部分使用python3.0)

    • 基本使用了 Python 2.x 的语法和库

    • 同时考虑了向 Python 3.0 的迁移,允许使用部分 Python 3.0 的语法与函数

    • 2010 年中推出的 Python 2.7 被确定为 最后一个Python 2.x 版本

提示:如果开发时,无法立即使用 Python 3.0(还有极少的第三方库不支持 3.0 的语法),建议

  • 先使用 Python 3.0 版本进行开发

  • 然后使用 Python 2.6Python 2.7 来执行,并且做一些兼容性的处理

03. 执行 Python 程序的三种方式

3.1. 解释器 python / python3

Python 的解释器

# 使用 python 2.x 解释器
$ python xxx.py
​
# 使用 python 3.x 解释器
$ python3 xxx.py

其他解释器(知道)

Python 的解释器 如今有多个语言的实现,包括:

  • CPython —— 官方版本的 C 语言实现

  • Jython —— 可以运行在 Java 平台

  • IronPython —— 可以运行在 .NET 和 Mono 平台

  • PyPy —— Python 实现的,支持 JIT 即时编译

3.2. 交互式运行 Python 程序

  • 直接在终端中运行解释器,而不输入要执行的文件名

  • 在 Python 的 Shell 中直接输入 Python 的代码,会立即看到程序执行结果

1) 交互式运行 Python 的优缺点

优点

  • 适合于学习/验证 Python 语法或者局部代码

缺点

  • 代码不能保存

  • 不适合运行太大的程序

2) 退出 官方的解释器

1> 直接输入 exit()

>>> exit()

2> 使用热键退出

在 python 解释器中,按热键 ctrl + d 可以退出解释器

print(1.001**365)
print(0.999**365)print(1.01**365)
print(0.99**365)

有什么启发吗???????????????????、

3) IPython

  • IPython 中 的 “I” 代表 交互 interactive

特点

  • IPython 是一个 python 的 交互式 shell,比默认的 python shell 好用得多

    • 支持自动补全

    • 自动缩进

    • 支持 bash shell 命令

    • 内置了许多很有用的功能和函数

  • IPython 是基于 BSD 开源的

版本

  • Python 2.x 使用的解释器是 ipython

  • Python 3.x 使用的解释器是 ipython3

  • 要退出解释器可以有以下两种方式:

1> 直接输入 exit

In [1]: exit

2> 使用热键退出

在 IPython 解释器中,按热键 ctrl + dIPython 会询问是否退出解释器

IPython 的安装

$ sudo apt install ipython

3.3. Python 的 IDE —— PyCharm

1) 集成开发环境(IDE)

集成开发环境(IDE,Integrated Development Environment)—— 集成了开发软件需要的所有工具,一般包括以下工具:

  • 图形用户界面

  • 代码编辑器(支持 代码补全自动缩进

  • 编译器/解释器

  • 调试器(断点单步执行

  • ……

2)PyCharm 介绍

  • PyCharm 是 Python 的一款非常优秀的集成开发环境

  • PyCharm 除了具有一般 IDE 所必备功能外,还可以在 WindowsLinuxmacOS 下使用

  • PyCharm 适合开发大型项目

    • 一个项目通常会包含 很多源文件

    • 每个 源文件 的代码行数是有限的,通常在几百行之内

    • 每个 源文件 各司其职,共同完成复杂的业务功能

3)PyCharm 快速体验

  • 文件导航区域 能够 浏览定位打开 项目文件

  • 文件编辑区域 能够 编辑 当前打开的文件

  • 控制台区域 能够:

    • 输出程序执行内容

    • 跟踪调试代码的执行

  • 右上角的 工具栏 能够 执行(SHIFT + F10) / 调试(SHIFT + F9) 代码

  • 通过控制台上方的单步执行按钮(F8),可以单步执行代码

黑马 Python学习笔记之第一个 Python 程序相关推荐

  1. 廖雪峰官方网站python学习笔记:第一个Pyhon程序

    输入和输出 print() print()函数可以接受多个字符串,用逗号","隔开,就可以练成一串输出: >>>print('The quick brown fo ...

  2. python学习笔记(一)Python 简单介绍

    Python学习笔记(一)Python 简单介绍 Python介绍 Python简介 Python应用领域 Python是解释型的语⾔ 编译和解释的区别是什么? 编译型vs解释型 编译型 解释型 Py ...

  3. Python学习笔记(二)——Python基本图形绘制

    Python学习笔记(二)--Python基本图形绘制 文章目录 Python学习笔记(二)--Python基本图形绘制 不同编程语言的初心和适用对象 Python蟒蛇绘制 五星红旗绘制 这次笔记主要 ...

  4. C#.NET学习笔记2---C#.第一个C#程序

    C#.NET学习笔记2---C#.第一个C#程序 技术qq交流群:JavaDream:251572072  教程下载,在线交流:创梦IT社区:__________以前的网站现在不弄了,抱歉 6.第一个 ...

  5. MyBatis学习笔记2 ——第一个MyBatis程序

    MyBatis学习笔记2 --第一个MyBatis程序 参考教程B站狂神https://www.bilibili.com/video/BV1NE411Q7Nx 环境搭建 建立一个mybatis数据库用 ...

  6. Spark学习笔记1——第一个Spark程序:单词数统计

    Spark学习笔记1--第一个Spark程序:单词数统计 笔记摘抄自 [美] Holden Karau 等著的<Spark快速大数据分析> 添加依赖 通过 Maven 添加 Spark-c ...

  7. python 学习笔记 12 -- 写一个脚本获取城市天气信息

    近期在玩树莓派,前面写过一篇在树莓派上使用1602液晶显示屏,那么可以显示后最重要的就是显示什么的问题了. 最easy想到的就是显示时间啊,CPU利用率啊.IP地址之类的.那么我认为呢,假设可以显示当 ...

  8. Python 学习笔记 第三篇 Python实现网易云评论网页爬虫+词云展示 (Pycharm+Mysql)

    初始条件,具体可见我的其他文章. 1.安装Python.Python 学习笔记 第一篇 Python的安装与配置 2.安装Pycharm,并导入第三方包.Python 学习笔记 第二篇 Python ...

  9. Python学习笔记(五) Python高级特性

    Python高级特性 一. 切片 python中提供了切片(Slice)操作符 , 可以方便的获取list或tuple中的某一段元素 . # -*- coding : utf-8 -*- #Pytho ...

  10. 【Python学习笔记】超详细Python快速入门教程(下)

    文章目录 031 变量的作用域 032 递归函数 033 异常处理机制 034 class自定义类 035 object内置类 036 多态 037 特殊方法和属性 038 类的深拷贝和浅拷贝 039 ...

最新文章

  1. 翻译的艺术 —— 无能为力的翻译,搞笑的音译
  2. Distributed Systems笔记-Cryptographic Protocols
  3. 征战蓝桥 —— 2017年第八届 —— C/C++A组第9题——分巧克力
  4. 那些年,我和发哥在恒大的日子
  5. Magento教程 12:Magento快速上传大量商品的方法
  6. python 模块路径搜索_Python模块搜索路径问题
  7. Android 创建一个新的Activity
  8. python能做什么工作-python语言能做什么工作
  9. excel 使用连接符合并单元格内容或者给单元格内容添加信息
  10. indesign怎么查找拼音_indesign拼音插件下载-Indesign拼音排版 免费版 - 河东下载站...
  11. html导航栏可以展开的下拉菜单,html导航栏下拉菜单如何制作
  12. SpringSecurity实战(二)-基于数据库认证授权
  13. 计算机量子化学计算实验报告物化实验,化学反应焓变的量子化学理论计算实验报告.doc...
  14. MTK Camera自定义Vendor Tag
  15. 四大全球卫星导航系统都能提供什么服务?
  16. oppor11st升Android p,OPPO R11st刷机教程_OPPO R11st卡刷升级更新官方系统包
  17. RxSwift之路01-----简单的RxSwift使用
  18. 信息用短信服务器发送什么意思,已用短信息服务发送是什么意思
  19. C语言指针中 *p 和 p 的区别
  20. ArcGIS Server SOI的调试与触发

热门文章

  1. 音频脉冲c语言程序,基于单片机的音乐发声器的设计(完整版,含程序和电路图).doc...
  2. C++ lock 加锁,解锁
  3. C#无法将顶级控件添加到控件 新的子窗体无法添加到主窗体
  4. html flash rtmp,Web直播之RTMP协议:vue-video-player + videojs-flash
  5. 读取hdr图像_HDR和蓝光哪个更清晰?画质更好?
  6. 怎么让图片一直转圈_半夜跟着导航开进山路,货车绕了3小时仍原地转圈,小两口快急哭...
  7. fclose会写入硬盘吗 linux_Linux 文件操作总结
  8. 总结一下自己脑海里的JavaScript吧(一)--DOM模型
  9. CP_EndPoint环境中的Hotspot Settings
  10. Android中使用响应式编程RxJava