python常见错误及基本技巧

1.2 Python Hello World
1.2.1 执行 python 三种方式
1.2.1.1 文本模式
Python 代码 保存在文件 中,解释器对文件逐行解释执行,在终端中输入解释器名,
再输入要执行的文件名:
# 使用 python 2.x 以文本模式执行 python 程序
$ python xxx.py
1.2.1.2 交互模式
直接在终端中运行解释器,而不输入要执行的文件名。在 Python 交互模式 中 边输
入边执行 Python 代码,会立即看到程序执行结果。
然而交互模式适合于学习/验证 Python 语法或者局部代码,但是代码不能保存,不
太适合运行太大的程序。
当我们想要退出交互模式,可以输出”exit()”.或者使用热键”ctrl+d”来退出交互模
式。
如果我们使用交互模式 编程 python 程序,除了使用默认的 python shell 之外呢?我
们还可以使用一个功能更强大的交互式 shell,叫 IPython ,“I”代表 interactive 交互的
意思。
IPython 支持自动补全,自动缩进,支持 linux 命令,内置了许多很有用的功能和函数。
Python 2.x 使用的解释器是 ipython
Python 3.x 使用的解释器是 ipython3
IPython 的安装: sudo apt install ipython
1.2.1.1 Python IDE(继承开发环境) - PyCharm
什么叫集成开发环境呢?
集成开发环境(IDE,Integrated Development Environment)—— 集成了开发软
件需要的所有工具,一般包括以下工具:
 图形用户界面;
 代码编辑器(支持 代码补全/自动缩进);
 编译器/解释器;
 调试器(断点/单步执行)
 其他... 1.2.2 Pycharm 简单介绍
1.2.2.1 简单介绍
PyCharm 是 Python 的一款非常优秀的集成开发环境,PyCharm 除了具有一般
IDE 所必备功能外,还可以在 Windows、Linux、macOS 下使用。
PyCharm 适合开发大型项目,一个项目通常会包含 很多源文件,每个源文件的代码
行数是有限的,通常在几百行之内,每个源文件各司其职,共同完成复杂的业务功能。
1.2.2.2 快速体验
文件导航区域 能够 浏览/定位/打开 项目文件。
文件编辑区域 能够 编辑 当前打开的文件。
控制台区域 能够:输出程序执行内容,跟踪调试代码的执行。
1.2.3 Hello World 程序
1.2.3.1 Python 源程序的基本概念
Python 源程序就是一个特殊格式的文本文件,可以使用任意文本编辑软件做 Python
的开发。
Python 程序的 文件扩展名 通常都是 .py。
1.2.3.2 演练步骤
1. 在 pycharm 中创建 01-HelloPython 项目
2. 在项目中创建 01-HelloPython.py 文件
3. 在 01-HelloPython 中输入 python 代码
4. 点击执行
1.2.4 演练扩展
1.2.4.1 关于 BUG
bug 原意为 臭虫,在计算机领域,指导致程序不能正常执行,或者执行结果不是预期
的错误。BUG 是程序员在开发时非常常见的,初学者常见错误的原因包括:
 手误
 对已经学习过的知识理解还存在不足
 对语言还有需要学习和提升的内容
在学习语言时,不仅要 学会语言的语法,而且还要 学会如何认识错误和解决错误的方
法。
每一个程序员都是在不断地修改错误中成长的。
1.2.4.2 手误
1> 手误,例如使用 pirnt("Hello world")
NameError: name 'pirnt' is not defined
名称错误:'pirnt' 名字没有定义
2> 将多条 print 写在一行
SyntaxError: invalid syntax
语法错误:语法无效
1.2.4.3 缩进错误
IndentationError: unexpected indent
缩进错误:不期望出现的缩进
Python 是一个格式非常严格的程序设计语言,目前而言,大家记住每行代码前面都不
要增加空格。
1.2.4.4 Python2.x 默认不支持中文
前市场上有两个 Python 的版本并存着,分别是 Python 2.x 和 Python 3.x。
Python 2.x 默认不支持中文,具体原因,等到介绍字符编码时给大家讲解。
Python 2.x 的解释器名称是 python
Python 3.x 的解释器名称是 python3
python 程序中,中文支持:
如果在程序中用到了中文,比如:print('你好'),如果直接运行输出会出错:
SyntaxError: Non-ASCII character '\xe5' in file index.py on line 2, but
no encoding declared; see http://www.python.org/peps/pep-0263.html for
details
解决的办法为:在程序的开头写入如下代码,这就是中文注释:
#coding=utf-8
注意:在 python 的语法规范中推荐使用的方式:
# -*- coding:utf-8 -*- 1.2.4.5 单词列表
* error 错误
* name 名字
* defined 已经定义
* syntax 语法
* invalid 无效
* Indentation 索引
* unexpected 意外的,不期望的
* character 字符
* line 行
* encoding 编码
* declared 声明
* details 细节,详细信息
* ASCII 一种字符编码
1.2.4.6 多文件演练
1. 在我们新建的项目 01-HelloPython 项目中,新增一个程序 02-MyPython.py 文件
2. 在新文件中添加一句 print(“hello python2”)
3. 点击执行新建文件
1.2.5 程序执行原理
1.2.5.1 计算机中的三大件
计算机中包含有较多的硬件,但是一个程序要运行,有 三个 核心的硬件,分别是:
CPU
中央处理器,是一块超大规模的集成电路
负责 处理数据/计算
内存
临时 存储数据(断电之后,数据会消失)
速度快
空间小(单位价格高)
硬盘
永久 存储数据
速度慢
空间大(单位价格低)


思考题:
 计算机中哪一个硬件设备负责执行程序?
CPU
 内存 的速度快还是硬盘的速度快?
内存
 我们的程序是安装在内存中的,还是安装在硬盘中的?
硬盘
 我买了一个内存条,有 500G 的空间!!!,这句话对吗?
不对,内存条通常只有 4G / 8G / 16G / 32G
 计算机关机之后,内存中的数据都会消失,这句话对吗?
正确
1.2.5.2 程序执行原理
程序 运行之前,程序是保存在硬盘中的,当要运行一个程序时,操作系统会首先让 CPU
把程序复制到内存中,CPU 执行内存中的程序代码,程序要执行,首先要被加载到内存。
1.2.5.3 python 程序执行原理
操作系统会首先让 CPU 把 Python 解释器 的程序复制到内存中,Python 解释器
根据语法规则,从上向下 让 CPU 翻译 Python 程序中的代码,CPU 负责执行翻译完成
的代码。
Python 的解释器有多大?
执行以下终端命令可以查看 Python 解释器的大小
# 1. 确认解释器所在位置
$ which python
# 2. 查看 python 文件大小(只是一个软链接)
$ ls -lh /usr/bin/python
# 3. 查看具体文件大小
$ ls -lh /usr/bin/python2.7
提示:建立 软链接 的目的,是为了方便使用者不用记住使用的解释器是 哪一个具体版本。
1.2.5.4 程序的作用
程序就是 用来处理数据 的!
新闻软件 提供的 新闻内容、评论…… 是数据
电商软件 提供的 商品信息、配送信息…… 是数据
运动类软件 提供的 运动数据…… 是数据
地图类软件 提供的 地图信息、定位信息、车辆信息…… 是数据
即时通讯软件 提供的 聊天信息、好友信息…… 是数据

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/474546.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

flash加xml图片叠加焦点图,左右箭头翻页

flash加xml左右箭头翻页,叠加焦点图,具体效果如下:源码下载: http://files.cnblogs.com/chendaoyin/flash%E5%8A%A0xml%E5%9B%BE%E7%89%87%E5%8F%A0%E5%8A%A0%E5%B7%A6%E5%8F%B3%E5%88%87%E6%8D%A2%E7%84%A6%E7%82%B9%E5%9B%BE.z…

linux 跨服务器备份,用BackupPC架设Linux跨平台备份服务器

随着数据价值逐渐被重视,当提到备份,更多是希望备份充分而非不够,特别在一些情况发生下庆幸为重要数据所备份所付出精力是值得的。通过xmodulo网站介绍一个跨平台的备份服务器软件BackupPC,它可以通过网络为Linux,Wind…

LeetCode 351. 安卓系统手势解锁(回溯)

文章目录1. 题目2. 解题1. 题目 我们都知道安卓有个手势解锁的界面,是一个 3 x 3 的点所绘制出来的网格。 给你两个整数,分别为 ​​m 和 n,其中 1 ≤ m ≤ n ≤ 9, 那么请你统计一下有多少种解锁手势,是至少需要经过…

Linux 文件基本属性以及操作技巧

Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定。 在Linux中我们可以使用ll或者ls –l命令…

POJ2503 Babelfish(二分)

题目链接。 分析&#xff1b; 主要是学着用一下bsearch。 #include <stdio.h> #include <stdlib.h> #include <string.h>struct Entry{char english[15], foreign[15]; }entrys[100010];int cmp(const void *a, const void *b){return strcmp((*(struct Entr…

linux命令解释程序实验,实验二 命令解释程序的使用

实验二 命令解释程序的使用一、实验目的掌握UNIX或LINUX环境下命令解释程序的使用能对编写简单的C程序&#xff0c;进行编译运行和调试。二、实验内容输入LINUX相关命令后记录系统输出简单的C程序&#xff0c;进行编译运行和调试三、实验步骤1、命令操作1) 浏览目录和文件的各…

Linux常用的命令及操作技巧

今天我们就来看几个常见的处理目录的命令吧&#xff1a; ls: 列出目录 cd&#xff1a;切换目录 pwd&#xff1a;显示目前的目录 mkdir&#xff1a;创建一个新的目录 rmdir&#xff1a;删除一个空的目录 cp: 复制文件或目录 rm: 移除文件或目录 你可以使用 man [命令] 来查看各个…

LeetCode 1534. 统计好三元组

文章目录1. 题目2. 解题1. 题目 给你一个整数数组 arr &#xff0c;以及 a、b 、c 三个整数。请你统计其中好三元组的数量。 如果三元组 (arr[i], arr[j], arr[k]) 满足下列全部条件&#xff0c;则认为它是一个 好三元组 。 0 < i < j < k < arr.length|arr[i] …

edge linux 下载软件,在Linux上安装edge浏览器

原标题&#xff1a;在Linux上安装edge浏览器时至今日&#xff0c;微软已经成为了世界上最大的开源代码贡献者&#xff0c;这可能出乎很多人的预料。随着微软放弃了经营多年的IE之后&#xff0c;edge成为了windows系统新的浏览器软件。前段时间听说改版后的edge提供了针对Linux的…

Linux系统用户账号的管理技巧

用户账号的管理工作主要涉及到用户账号的添加、修改和删除。 添加用户账号就是在系统中创建一个新账号&#xff0c;然后为新账号分配用户号、用户组、主目录和登录Shell等资源。刚添加的账号是被锁定的&#xff0c;无法使用。 1、添加新的用户账号使用useradd命令&#xff0c;其…

LeetCode 1535. 找出数组游戏的赢家

文章目录1. 题目2. 解题1. 题目 给你一个由 不同 整数组成的整数数组 arr 和一个整数 k 。 每回合游戏都在数组的前两个元素&#xff08;即 arr[0] 和 arr[1] &#xff09;之间进行。 比较 arr[0] 与 arr[1] 的大小&#xff0c;较大的整数将会取得这一回合的胜利并保留在位置…

在Linux中查看ftp状态,linux中ftp常见操作启动ftp状态,终止ftp会话

Ftp:查询ftp 状态&#xff1a;Service vsftpd status设置目录权限&#xff1a;chmod 777 -R /home/wwwroot/www.xx.com◆启动ftp会话open命令用于打开一个与远程主机的会话。该命令的一般格式是&#xff1a;◆open 主机名/IP如果在ftp 会话期间要与一个以上的站点连接&#xff…

python变量以及类型(含笔记)

1. 变量及类型 1.1 变量的定义 在程序中&#xff0c;有时我们需要对2个数据进行求和&#xff0c;那么该怎样做呢&#xff1f; 大家类比一下现实生活中&#xff0c;比如去超市买东西&#xff0c;往往咱们需要一个菜篮子&#xff0c;用来进行存储物品&#xff0c;等到所有的物…

POJ-1707 Sum of powers bernoulli方程

题目链接&#xff1a;http://poj.org/problem?id1707 利用bernoulli方程来解决此题。 数学上&#xff0c;伯努利数Bn的第一次发现是与下述数列和的公式有关&#xff1a; 其中n为固定的任意正整数。 这数列和的公式必定是变量为m&#xff0c;次数为n1的多项式&#xff0c;称为伯…

LeetCode 1536. 排布二进制网格的最少交换次数

文章目录1. 题目2. 解题1. 题目 给你一个 n x n 的二进制网格 grid&#xff0c;每一次操作中&#xff0c;你可以选择网格的 相邻两行 进行交换。 一个符合要求的网格需要满足主对角线以上的格子全部都是 0 。 请你返回使网格满足要求的最少操作次数&#xff0c;如果无法使网…

linux软件包管理 pdf,vSphere Storage Appliance 安装和管理 PDF

vSphere Storage Appliance 安装和管理VSA 群集利用多个 ESXi 主机的计算和存储资源&#xff0c;并提供一组可由数据中心中的所有主机访问的数据存储。运行 vSphere Storage Appliance 并加入 VSA 群集的 ESXi 主机是 VSA 群集成员。通过vSphere Storage Appliance &#xff0c…

python标识符、命名规则及关键字(含笔记)

目录 1、标识符和关键字 1.1 标识符概念 1.2 标识符规则 2、命名规则 3、关键字 1、标识符和关键字 1.1 标识符概念 开发人员在程序中自定义的一些符号和名称。标示符是自己定义的,如变量名,函数名等。 1.2 标识符规则 2、命名规则 见名知意。起一个有意义的名字&#…

【IT笔试面试题整理】不用加减乘除做加法

【试题描述】写一个函数&#xff0c;求两个整数的和&#xff0c;要求在函数体内不得使用加减乘除四则运算符合。 基本思路是这样的&#xff1a; int A, B;A&B //看哪几位有进位A^B //不带进位加 考虑二进制加法的过程&#xff0c; 步骤一、A^B&#xff0c;能够得到没有…

LeetCode 1537. 最大得分(切片取出局部最大值)

文章目录1. 题目2. 解题1. 题目 你有两个 有序 且数组内元素互不相同的数组 nums1 和 nums2 。 一条 合法路径 定义如下&#xff1a; 选择数组 nums1 或者 nums2 开始遍历&#xff08;从下标 0 处开始&#xff09;。从左到右遍历当前数组。如果你遇到了 nums1 和 nums2 中都…

华为固件解包工具linux,华为解包工具官方下载

华为官方APP固件解包工具包括&#xff1a;华为官方固件update.app专用解包工具和 system.img解包工具&#xff0c;可解包华为官方SD卡刷机包UPDATA.APP&#xff0c;可将APP固件解包成IMG镜像分区文件&#xff0c;继续解包可对刷机包进行定制。官方ROM解包教程&#xff0c;现写一…