如何编写 Python 程序
如何编写 Python 程序
从今以后,保存和运行 Python 程序的标准步骤如下:
对于 PyCharm 用户
- 打开 PyCharm。
- 以给定的文件名创建新文件。
- 输入案例中给出的代码。
- 右键并运行当前文件。
注意:每当你需要提供 命令行参数(Command Line Arguments)时,点击 Run -> Edit Configurations 并在 Script parameters: 部分输入相应参数,并点击 OK 按钮:

对于其他编辑器用户
- 打开你选择的编辑器。
- 输入案例中给出的代码。
- 以给定的文件名将其保存成文件。
- 在解释器中通过命令
python program.py来运行程序。
案例:使用变量与字面常量
输入并运行以下程序:
# 文件名:var.py
i = 5
print(i)
i = i + 1
print(i)
s = '''This is a multi-line string.
This is the second line.'''
print(s)
输出:
5
6
This is a multi-line string.
This is the second line.
它是如何工作的
下面是这一程序的工作原理。首先,我们使用赋值运算符(=)将字面常量数值 5 赋值给变量 i。这一行被称之为声明语句(Statement)因为其工作正是声明一些在这一情况下应当完成的事情:我们将变量名 i 与值 5 相连接。然后,我们通过 print 语句来打印变量 i 所声明的内容,这并不奇怪,只是将变量的值打印到屏幕上。查看Python的运算对象、运算符、表达式和语句的使用
接着,我们将 1 加到 i 变量所存储的值中,并将得出的结果重新存储进这一变量。然后我们将这一变量打印出来,并期望得到的值应为 6。
类似地,我们将字面文本赋值给变量 s,并将其打印出来。
针对静态编程语言程序员的提示
变量只需被赋予某一值。不需要声明或定义数据类型。
逻辑行与物理行
所谓物理行(Physical Line)是你在编写程序时 你所看到 的内容。所谓逻辑行(Logical Line)是 Python 所看到 的单个语句。Python 会假定每一 物理行 会对应一个 逻辑行。
有关逻辑行的一个例子是诸如 print('hello world') 这样一句语句——如果其本身是一行(正如你在编辑器里所看到的那样),那么它也对应着一行物理行。
Python 之中暗含这样一种期望:Python 鼓励每一行使用一句独立语句从而使得代码更加可读。
如果你希望在一行物理行中指定多行逻辑行,那么你必须通过使用分号(;)来明确表明逻辑行或语句的结束。下面是一个例子:
i = 5
print(i)
实际上等同于
i = 5;
print(i);
同样可以看作
i = 5; print(i);
也与这一写法相同
i = 5; print(i)
然而,我强烈建议你对于每一行物理行最多只写入一行逻辑行。这个观点就是说你不应该使用分号。实际上,我从未在 Python 程序中使用、甚至是见过一个分号。
在一类情况下这一方法会颇为有用:如果你有一行非常长的代码,你可以通过使用反斜杠将其拆分成多个物理行。这被称作显式行连接(Explicit Line Joining)5:
s = 'This is a string. \
This continues the string.'
print(s)
输出:
This is a string. This continues the string.
类似地,
i = \
5
等同于
i = 5
在某些情况下,会存在一个隐含的假设,允许你不使用反斜杠。这一情况即逻辑行以括号开始,它可以是方括号或花括号,但不能是右括号。这被称作 隐式行连接(Implicit Line Joining)。你可以在后面当我们讨论python列表(List)的章节时了解这一点。
缩进
空白区在 Python 中十分重要。实际上,空白区在各行的开头非常重要。这被称作 Python缩进(Indentation)。在逻辑行的开头留下空白区(使用空格或制表符)用以确定各逻辑行的缩进级别,而后者又可用于确定语句的分组。
这意味着放置在一起的语句必须拥有相同的缩进。每一组这样的语句被称为 块(block)。我们将会在Python教程后文章节的案例中了解块这一概念是多么重要。
有一件事你需要记住:错误的缩进可能会导致错误。下面是一个例子:
i = 5
# 下面将发生错误,注意行首有一个空格
print('Value is', i)
print('I repeat, the value is', i)
当你运行这一程序时,你将得到如下错误:
File "whitespace.py", line 3
print('Value is', i)
^
IndentationError: unexpected indent
# 缩进错误:意外缩进
你会注意到第二行开头有一个空格。Python 指出的错误信息告诉我们程序的语法是无效的,意即,程序没有被正确地写入。这一信息对你的意义是 你不能任意开始一个新的语句块(当然,除非你一直在使用默认的主代码块)。你可以使用新块的情况将会在后面诸如控制流等章节加以介绍。
如何缩进
使用四个空格来缩进。这是来自 Python 语言官方的建议。好的编辑器会自动为你完成这一工作。请确保你在缩进中使用数量一致的空格,否则你的程序将不会运行,或引发不期望的行为。
针对静态编程语言程序员的提示
Python 将始终对块使用缩进,并且绝不会使用大括号。你可以通过运行
from __future__ import braces来了解更多信息。
总结
现在我们已经了解了诸多本质性的细节,我们可以前去了解控制流语句等更多更加有趣的东西。记得一定要充分理解你在本章所阅读的内容。
如何编写 Python 程序的更多相关文章
- 编写python程序和运行.py文件的方法步骤
前提:已安装好 Subliume Test 3 且已经添加好python编译系统,已安装好python3.7 一.新建一个文本文档,将后缀名改为.py 二.使用 Subliume Test 3 打开该 ...
- 自动编写Python程序的神器,Python 之父都发声力挺!
就在不久前,kite——那个能够自己编写python代码的AI,Python 之父 Guido van Rossum 使用之后,也发出了「really love」感叹,向大家墙裂推荐了这一高效工具 ...
- 在VS2017中编写Python程序
最近开始了python的学习,在搭建完python环境之后,在选择IDE的时候陷入了困境,首先选择的是PyCharm但是用着还是不习惯,毕竟用VS开发了几年了,突然换软件总感觉有点不适应,就想到了强大 ...
- Python测试进阶——(3)编写Python程序监控计算机的服务是否正常运行
用python写了个简单的监控进程的脚本,当发现进程消失的时候,立即调用服务,开启服务. 脚本的工作原理是这样的:脚本读取配置文件,读取预先配置好的调用系统服务的路径和所要监控的服务在进程管理器中的进 ...
- Python基础:五、Python程序的编写方式
python程序有两种编写方式: 1. 进入cmd控制台(linux终端),输入python进入编辑模式,这时候我们可以直接编写python程序 2. 也可以在.py文件中编写python代码,通过p ...
- 教你如何编写、保存与运行 Python 程序
第一步 接下来我们将看见如何在 Python 中运行一个传统的“Hello World”程序.Python教程本章将会教你如何编写.保存与运行 Python 程序. 通过 Python 来运行的你的程 ...
- Python学习笔记(二)使用Sublime Text编写简单的Python程序()
一.使用Sublime Text编写Python 1.点击“文件” →”新建文件“ 2.点击”文件“→”保存“,并保存为.py文件 此时已经创建好Python文件了,接下来就可以编写Python程序了 ...
- 变量-数据类型-对象-如何编写python脚本
标识符的命名规则变量是标识符的例子. 标识符 是用来标识 某样东西 的名字.在命名标识符的时候,你要遵循这些规则:标识符的第一个字符必须是字母表中的字母(大写或小写)或者一个下划线(‘ _ ’).标识 ...
- 使用Notepad++编译运行C/C++/Python程序
对我来说,比较常用的是C/C++/Python. 使用Notepad++编译运行单个源文件的C/C++/Python,比使用复杂的IDE更加快捷. 想要让Notepad++能够做到编译运行C/C++/ ...
随机推荐
- MBTiles 离线地图演示 - 基于 Google Maps JavaScript API v3 + SQLite
MBTiles 是一种地图瓦片存储的数据规范,它使用SQLite数据库,可大大提高海量地图瓦片的读取速度,比通过瓦片文件方式的读取要快很多,适用于Android.IPhone等智能手机的离线地图存储. ...
- Comparable 接口的使用
//学生类 package test; public class Student implements Comparable<Student>{ private int age; priv ...
- mongo删除、添加分片
MongoDB 分片的原理.搭建.应用 一.概念: 分片(sharding)是指将数据库拆分,将其分散在不同的机器上的过程.将数据分散到不同的机器上,不需要功能强大的服务器就可以存储更多的数据和处 ...
- [转]C#如何获取客户端IP地址
代码如下: /// <summary> /// 获取客户端IP地址 /// </summary> /// <returns></returns> ...
- Python:文件的读取、创建、追加、删除、清空
一.用Python创建一个新文件,内容是从0到9的整数, 每个数字占一行:#python>>>f=open('f.txt','w') # r只读,w可写,a追加>> ...
- Jumpserver堡垒机搭建(脚本自动化)
#!/bin/bash # coding: utf- # Copyright (c) set -e #返回值为非0时,退出脚本 echo "0. 系统的一些配置" setenfor ...
- mysql事务隔离
一.事务的特性 原子性.一致性.隔离性.持久性 二.事务的隔离级别 1.未提交读 (Read Uncommitpeatableted) 臭名昭著的脏读 ,事务A读到事务B未提交的数据 2.提交读RC( ...
- oracle表空间的创建+权限分配
/*分为四步 */ /*第1步:创建临时表空间 */ create temporary tablespace user_temp tempfile 'D:\oracle\oradata\Oracle9 ...
- Zabbix——设置模板
前提条件: Zabbix版本为4.0 可以正常使用Server 1. 添加H3C网络交换机的CPU和内存模板,并配置自动发现. 注意,需要添加完成后,重新进行搜索后再此进入才有下列选项. 添加CPU的 ...
- oracle编程300例-性能优化(一)
1.在SELECT语句中避免使用“*” 2.尽可能减小记录行数 3.使用rowid高效删除重复记录 实例: delete from stu s where s.rowid>(select min ...