Python First Lesson
前面的博文中,我们已经成功搭建了 Python 学习以及开发环境。这里,我们来完成我们的 Python 第一课:Hello Python’s World。
Hello World
交互式编程只是用来玩玩而已,真正的项目开发还是需要编写源文件的。
首先我们给出第一个使用 Python 脚本语言编写的代码文件 HelloWorld.py
,代码内容如下:
1 | print("Welcome to Python world!") |
编写 Python 源文件
在 Python 的交互式命令行环境下写程序,好处是一边编写代码一边就能得到结果,坏处是没法保存,下次还想运行的时候,还得再敲一遍。所以一般我们 使用交互式环境进行学习测试,而不是开发。
而实际学习以及工作时,通常是使用一个文本编辑器来写源代码,写完了,将其保存为一个文件(Python 源文件),这样,程序就可以反复运行了。
Python 源文件(以 .py 后缀结尾)是一种纯文本文件,内部没有任何特殊格式和字符(例如 BOM >>> 标识文件编码格式的头字符),你需要选择一款合适的文本编辑器来打开、编辑它。
那么问题来了:文本编辑器到底哪家强???
这里我们推荐两款文本编辑器:Sublime Text && Visual Studio Code。
这两款文本编辑器都是免费、开源的,甚至为了方便编码可以内嵌各种丰富的插件,方便之后的使用拓展。
注意,不能使用写字板、Word、WPS 等排版工具编写 Python 源文件,其保存的不是纯文本文件,有内置的特殊格式,这些会让代码变得“乱七八糟”,影响 Python 解释器的执行。
使用 Windows 下的记事本,保存时记得选择 【不带 BOM 的 Utf-8 编码】 形式保存,否则会在文件头带有特殊字符。不管是否影响 Python 解释器运行,这对使用来说是不合理的。
选择好源文件编辑器后,来看创建和编写 Python 源文件的要求:
源文件的命名以及后缀
文件名一般是 英文字母、数字和下划线的组合,文件后缀必须为 .py
。
任何编程语言的源文件都有特定的后缀,例如:
- C 语言源文件的后缀是:
.c
; - C++ 源文件的后缀是:
.cpp
; - JavaScript 源文件的后缀是:
.js
; - C# 源文件的后缀是:
.cs
; - Java 源文件的后缀是:
.java
文件后缀只是用来区分不同的编程语言,并不会导致源文件的内部格式发生变化,源文件还是纯文本的。编辑器、编译器(解释器)和用户(程序员)都依赖后缀来区分当前源文件属于哪种编程语言。
源文件的编码格式
Python 源文件是一种纯文本文件,因此会涉及到文件编码格式的问题,也就是 磁盘上,使用哪种字符编码来存储源代码文件?!!
Python 3.x 已经将 UTF-8 作为默认的源文件编码格式,上面推荐的两款编辑器都默认支持 UTF-8 编码。
如果你对编码格式不了解的话,请猛击链接学习 >>> 【编程基础之编码详解】。
运行源文件
安装好文本编辑器,了解了 Python 源文件编写注意事项,以及源文件的编码格式问题之后,
我们将本章节开头给出的代码内容写入文件并命名为 HelloWorld.py
。然后在终端(Terminal or Shell)下进行运行:
1 | 先进入源文件所在目录: |
期待你成功了~~~
👇👇👇 你需要注意: 👇👇👇
你必须在脚本存放目录下执行,如果当前目录下没有 HelloWorld.py
这个文件,运行 python HelloWorld.py
就会报错:
1 | python HelloWorld.py |
当然,运行前我们还要保证源文件的可执行权限:
1 | $ chmod +x HelloWorld.py |
| ================================================== Split Line =============================================== |
Linux && Mac 下支持直接运行 Python 源文件 >>>>>
每次执行源文件都需要调用解释器(python.exe),我们能不能像 .exe
文件那样直接运行 .py
文件呢?在 Windows 上是不行的,但是,在 Mac 和 Linux 上是可以的,方法是在 .py
文件的第一行加上一个特殊的注释:
1 | #!/usr/bin/env python3 |
或者:
1 | #!/usr/bin/python3 |
上面的 #!
是一种标记,用来标识当前脚本将使用什么解释器进行执行!!!
运行:
1 | # Linux&Unix 下直接运行脚本文件:HelloWorld.py |
Windows 系统不区分大小写,在 Windows 平台上输入源文件路径时可以不用注意大小写;但是类 Unix 系统(Mac OS X、Linux 等)都是严格区分大小写!!!
下面我们来看 Python 中最基本的语法 –> 输入输出(Input/Output):
Input && Output Function
输出(Output)是我们接触到的第一个 Python 程序语句,例如 print("Welcome to Python world!")
。
Output
Python 使用 print()
函数在屏幕上输出一段文本,输出结束后会自动换行。
[1] >>> 输出字符串
print()
语句在括号中加上一串字符串(字符串要用 双或单 引号括起来,无区别),就可以向屏幕上输出指定的文字。字符串中可以包含英文、数字、中文以及各种符号。
比如输出 Hello, welcome to Python world!
,用代码实现如下:
1 | # print() 输出字符串类型: |
[2] >>> 输出其它 Python 数据对象
当然,print()
语句也可以输出其它(Python 数据)对象,如数字、列表、元组、字典、集合等:
1 | # print() 输出数字类型: |
print() 函数中的连接符
[1] >>> 英文半角状态的逗号(,
)
print()
函数也可以同时接受多个字符串(或多个 Python 数据对象),用逗号 “,” 隔开,就可以连成一串输出。并且每遇到一个逗号 “,” 会自动输出一个空格(sep
参数定义,默认空格)。输出样式如下:
1 | 'Welcome to Python world.','It is good.','why?') print( |
注意,使用 逗号(,
)连接符的对象可以是任意的 Python 数据对象,使用 sep
参数来指定连接端子(默认空格)。
[2] >>> 英文半角状态的加号(+
)
除了使用逗号 “,” 隔开连接一串输出外,还可以使用【连接符 “+”】 来连成一串字符串输出。
1 | 'Hello ' + 'LiHua,' + ' welcome to Python world.') print( |
注意:和逗号 “,” 连接的区别在于 —> 连接处不含连接符(不可指定),并且只可拼接(支持加法 [+] 操作的)同类型数据(字符串,元组,列表,数字等)。
print() 函数中的 end 参数
认真的同学肯定发现了:print() 函数之后 Python 系统会自动换行。如下面的代码:
1 | print("Hello, welcome to python world.") |
运行输出结果如下:
1 | Hello, welcome to python world. |
那么,当我们不想 print() 之后自动换行,可以使用:end 参数。
end 参数可以用于指定 print 之后的分隔符,事实上,你可以看作当不调用 end 指定其它分隔符时,end 的默认分隔符是 :换行(“\n”)。
1 | print("Hello, welcome to python world.", end=";") |
运行输出结果如下:
1 | Hello, welcome to python world.;This is a print() function test. |
print() 函数的一般形式
最后,我们给出 print()
函数的更一般形式:
1 | # print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False) |
其它常用的是,可以令 file=file-like object
来将 print 打印内容写入文件!!!如下:
1 | word = "hello, welcome to python world" |
Input
现在,我们已经可以用 print()
输出你想要的结果了。但是,如果要让用户从电脑的输入设备(键盘)输入一些字符怎么办???
Python提供了一个 input()
,可以让用户输入字符串,并存放到一个变量里。比如输入用户的名字:
1 | input() name = |
输入完成后,我们查看一下:
1 | print(name) |
input() 函数友好的用户输入提醒
通常我们为了程序的友好性,需要提示信息来告诉用户:“嘿,赶紧输入你的名字”。
input()
还可以让你显示一个字符串来提示用户。于是我们编辑一个新的脚本 Helloxxx.py
,内容如下:
1 | name = input("Please enter your name:") |
运行这个程序,你会发现,程序一运行,会首先打印出 please enter your name:
,这样,用户就可以根据提示进行输入。输入名字后,得到 Hello, xxx
的输出:
1 | python Helloxxx.py |
input() 函数的返回值类型
对于 input() 函数来说,不管我们输入的是什么,不管你输入的是整数 1234
,还是字符串,input() 函数的返回值都是 【字符串】 类型的。于是:
1 | choice = input('请输入您的选择 [1 or 2]:') |
你可以尝试一下输入1:
1 | 输入您的选择:1 |
怎么办????此时我们需要对 input()
返回值进行类型转换(这里不用深究类型转换,见后续博文):
1 | # 输入被转换为数: |
或者:
1 | # 变量赋值 |
Python First Lesson
install_url
to use ShareThis. Please set it in _config.yml
.