在了解 python 的脚本结构之前, 我们先创建一个脚本
在 Pycharm
中,我们有两种方式执行脚本。
一种是利用菜单栏、工具栏、右击出现的 "run xxxx"(或者快捷键 Ctrl + Shift + F10) 实现。
另一种就是利用 Pycharm
的 Terminal
命令行终端
python
脚本第一行,以 "#"
开头的表示的信息就是头部注释由于Python源代码也是一个文本文件,所以,当你的源代码中包含中文的时候,在保存源代码时,就需要务必指定保存为UTF-8编码。当Python解释器读取源代码时,为了让它按UTF-8编码读取,我们通常在文件开头写上这两行:
# !/usr/bin/env python
# -*- coding:utf-8 -*-
或者
# coding:utf-8
第一行注释是为了告诉Linux/OS X系统,这是一个Python可执行程序,根据usr/bin/env路径去找python的运行程序来运行,Windows系统会忽略这个注释;
第二行注释是为了告诉Python解释器,按照UTF-8编码读取源代码,否则,你在源代码中写的中文输出可能会有乱码。
不过现在一般情况下都只会写一行 "#coding:utf-8"
。
"# coding:utf-8"
,定义 coding
规则告诉系统脚本是何种编码格式;目前很少使用 "# !/usr/bin/env python"
,定义 python
解释器的指定执行路径 WIN系统不生效参考一个 import 的小案例
# coding:utf-8
import os
a = "当前的路径为:"
b = os.getcwd()
print(a, b)
输出结果为当前的路径为:
/Users/xxxx/PycharmProjects/pythonlearn`
`
顺序如何执行的?
这里我们看一个执行 "print" 函数的脚本
# coding:utf-8
print("这是第一行 'print' 信息")
print("这是第二行 'print' 信息")
print("这是第三行 'print' 信息", end=",")
print("这是第四行 'print' 信息", )
print("Hello", "World")
上文中的 "print" 函数是 Python3.x的内置函数(Python3.x已经变为了内置函数,Python2.x中,print为关键字 )。那么什么是内置函数?
内置函数就是python标准库里(语言自身携带的)函数(公共函数),不需要重复造轮子,也不需要导入,可以直接使用的函数。再通俗一点可以理解为解释器自带的函数就是内置函数。
现在就看看我们接触的第一个python内置函数 "print"
print 的翻译是 "打印" 的意思,可以将信息显示(打印)在控制台(cmd)上的函数,print 函数可以将Python代码中几乎所有程序都可以打印出来。
了解了 "print"函数后,现在我们再来看看 "print"函数的语法 print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)
上文的 "print" 函数的脚本输出结果见下图
由此可知,python脚本的执行顺序是由上而下,逐行执行的。"print" 函数是我们学习python所接触的第一个内置函数,在后续的学习过程中我们会不端的接触内置函数,尤其是在函数相关的章节我们还会学习函数的创建执行等等。
什么是注释? 在代码中不会被python直接执行的语句
为什么使用注释?
第一、确保对模块, 函数, 方法和行内注释使用正确的风格,它们可以用自然语言告诉你某段代码的功能是什么。
第二、注释可以帮助调试程序
给代码添加说明是注释的基本作用,除此以外它还有另外一个实用的功能,就是用来调试程序。
举个例子,如果你觉得某段代码可能有问题,可以先把这段代码注释起来,让 Python 解释器忽略这段代码,然后再运行。如果程序可以正常执行,则可以说明错误就是由这段代码引起的;反之,如果依然出现相同的错误,则可以说明错误不是由这段代码引起的。
在调试程序的过程中使用注释可以缩小错误所在的范围,提高调试程序的效率。
注释的三种用法
下面我们看一下关于注释的一个小练习,方便我们更直观的了解注释
# coding:utf-8
"""
@Author:Neo
@Date:2020/9/14
@Filename:04-notes.py
@Software:Pycharm
"""
print("再小的努力,乘以365都很明显")
print("坚持!坚持!坚持!")
print("-----------------------")
'''
这个脚本用于注释练习
引号注释一般应用在两个场景
1.应用在整个脚本的开篇,作用是给别人介绍一下这个脚本的作用
2.对于函数功能的解释,比如"print"内置函数里就有这样的解释
3.Python中使用 # 进行注释,我们在使用# 的时候,# 号后面要空一格
4.在行内注释的时候,中间应该至少加两个空格
'''
# 关于双引号和单引号的多行注释应用场景,其实并没有强制的规范,但是我们尽量要统一。
# 不要上面用双引号的多行注释,下面用单引号的多行注释,非常之不美观()
print("人生苦短,我用Python") # 这是一个简单的注释练习
什么是python脚本执行入口?
通俗一点来说,好比进入一栋大楼肯定有个大门入口,汽车上高速也一定有一个入口。所以,执行程序,也需要一个入口;一般称代码执行的入口叫做主函数(main 函数)。
对于很多编程语言来说,程序都必须要有一个入口,比如C,C++,以及完全面向对象的编程语言Java,C#等。
如果你接触过这些语言,对于程序入口这个概念应该很好理解,C,C++都需要有一个main函数作为程序的入口,也就是程序的运行会从main函数开始。同样,Java,C#必须要有一个包含Main方法的主类,作为程序入口。
而Python则不同,它属于脚本语言,不像编译型语言那样先将程序编译成二进制再运行,而是动态的逐行解释运行。
也就是从脚本第一行开始运行,没有统一的入口。
一个Python源码文件(.py)除了可以被直接运行外,还可以作为模块(也就是库),被其他.py文件导入。
不管是直接运行还是被导入,.py文件的最顶层代码都会被运行(Python用缩进来区分代码层次),而当一个.py文件作为模块被导入时,
我们可能不希望一部分代码被运行。
下面我们来看看执行入口(主函数)的写法
if __name__ == '__main__':
print(os.getcwd())
print("这是python脚本的执行入口")
关于上面的 "主函数" 我们来解释下
if
的意思就是:如果运行的程序是你自己,那么就执行 print(os.getcwd())
与 print("这是python脚本的执行入口")
a.py
这个脚本,且这个脚本内有主函数,那么就会执行主函数b.py
这个脚本,即使 b.py
导入了 a.py
,也不会执行 a.py
里面的主函数(main 函数)那么是否一定需要执行入口(主函数)? 其实是不一定的,假设没有主函数,那么运行 python脚本 时,就会至上而下,逐行运行 python脚本 的所有代码。
既然不一定需要执行入口,那么执行入口的意义是什么呢?其目的是将业务代码写在主函数上面,主函数用来调用业务代码,代码结构整洁向 Java、C、Golang 看齐,他们都是要求一个程序必须有一个主执行入口才能正确运行。
上面的(主函数)的写法我们看到在 "print" 函数前面有一小段空白区域,由此就引出了接下来的需要我们了解的 python的缩进规则
。
区别于其它程序语言(这里我们以 JAVA 和 C 语言为例)所采用的大括号 "{ }" 来分隔代码块,在 Python 中所采用的是 代码缩进
和 冒号( : )
来区分代码块之间的层次。
在 Python 中,对于类定义、函数定义、流程控制语句、异常处理语句等,行尾的冒号和下一行的缩进,表示下一个代码块的开始,而缩进的结束则表示此代码块的结束。
需要注意的是,Python 中实现对代码的缩进,可以使用空格或者 Tab 键两种方式来实现。但无论是手动敲空格,还是使用 Tab 键,通常情况下都是采用 4 个空格长度作为一个缩进量(默认情况下,一个 Tab 键就表示 4 个空格)。
关于 Python 的缩进规则,初学者可以这样理解,Python 要求处于同一作用域中的各行代码,它们的缩进量必须一致,但具体缩进量为多少,并不做硬性规定。
例如,下面这段 Python 代码中(涉及到了目前尚未学到的知识,初学者无需理解代码含义,只需体会代码块的缩进规则即可)
a = 2
if a > 1:
print("当前 a 的值大于1") # 缩进4个空格占位
else: # 与if对齐
print("当前 a 的值小于1") # 缩进4个空格占位
现在我们再来看一下缩进不是那么规范的 Python 代码
a = 2
if a == 1:
print("当前 a 的值等于2") # 缩进4个空格占位
else: # 与if对齐
print("当前 a 的值不等于2") # 缩进4个空格占位
print("结束")
在 Pycharm 中 我们可以很直观的看到在21行代码出现了红色的错误标识符,那么运行一下试试看。
抛出了 IndentationError: unexpected indent
异常,该异常的原因就是缩进异常,Indentation 即缩进的意思,该异常出现的场景往往出现在 空格与 Tab 缩进混用
或者是 缩进出现错误
的情况下,这个时候就需要排查源码中对应代码行修复缩进的问题即可解决。
由此可见一个好的编码规范是多么的重要啊,可参考 Python零基础入门篇 - 06 - Python初学者需要牢记的几种编码规范
input函数的功能:接收一个标准输入的数据,返回为 string 类型;在命令行输入一行信息,会将这行信息返回成字符串。
input函数的用法
用法:
result = input('请输入 input 内容')
参数:
括号内是一个提示字符串,告知用户需要填写的已知条件
下面我们看一个 input 函数的演示栗子(涉及到了目前尚未学到的知识,无需理解代码含义,只需体会 input 函数用法即可)
name = input("请输入姓名:")
birthday = input("请输入生日:")
sex = input("请输入性别:")
print("你的名字是:%s, 生日是:%s, 性别是:%s " % (name, birthday, sex)) # '%s' 为格式化字符串
输出结果如下:
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。