全网惟一面向软件测试人员的Python基础教程
起点:《python软件测试实战宝典》介绍
第一章 为什么软件测试人员要学习Python
第二章 学Python之前要搞懂的道理
第三章 你知道Python代码是怎样运行的吗?
文章目录
- 全网惟一面向软件测试人员的Python基础教程
- 1. Python代码运行的顺序是怎样的?
- 2. 变量的输入与输出是什么?
- 总结
1. Python代码运行的顺序是怎样的?
Python的代码执行大部分的时候是由上至下,由左至右,从括号来到括号外,并且是整个文件运行,比如代码:
# 执行顺序
print('先上面')
print('先左边');print("后右边")
print('后下面')
print(round(3.9912,2)) # 先4舍5入,再进行输出
运行结果:
先上面
先左边
后右边
后下面
3.99
注意以上说的顺序只能说大部分的时候是正确的,也就是你在学python基础的时候是正确的。
如果代码文件里面有函数或者类的定义(没有调用), 则先跳过(不执行),比如代码:
print('先上面')
def fun1():
print('hello 1')
class cls1():
pass
print('先上面')
print('先左边');print("后右边")
print('后下面')
print(round(3.9912,2)) # 先4舍5入,再进行输出
运行结果:
先上面
先上面
先左边
后右边
后下面
3.99
我们把函数进行调用,把代码修改为以下:
# 执行顺序
print('先上面')
# 调用函数
fun1()
def fun1():
print('hello 1')
class cls1():
pass
print('先左边');print("后右边")
print('后下面')
运行的结果:
Traceback (most recent call last):
File "D:\DLAI\qwenAILearn\untitled10\集合1.py", line 15, in <module>
fun1()
NameError: name 'fun1' is not defined
先上面
运行后得到一个错误:Name Error:name ‘fun1’ is not defined。这个错误的原因就是,由于没有理解python代码运行的顺序造成的。由上至下,fun1()调用时,代码上面并没有定义,所以才会有这个错误。
准确的说法:如果有定义函数,但是没有调用的时候其实不是没有执行,而是执行的时候Python会将函数名放入到内存地址中,供调用的的时候引用。以上说法只是为了好理解。
2. 变量的输入与输出是什么?
假设我们某个代码里面只有以下内容:
a = 343434 + 990090
点击Pycharm运行,如图所示,会发现下方区域没有任何代码,那这是为什么呢
答:因为没有输出。
a = 343434 + 990090 这句话什么意思呢?
343434 + 990090这是我们的计算,计算出来的结果存储在a这个名称中,a在python中称之为变量。
a为什么是变量,因为a 不仅可以存储343434 + 990090的结果,也可以存储 1 + 1的结果,只需要把代码变为:
# 计算加法去处的结果
a = 343434 + 990090
a = 1 + 1
a的值,随着我们的使用呢,是可能随时发生着的变化的,所以a称之为变量!而且在python中一旦重命,那么a的值会立刻发生变化!
变量存储的是什么,是右边计算的值,右边的整个过程我们可以称之为‘输入’,即参与计算的过程相对于变量来说,都是‘输入’的数据,输入的过程就是计算的过程。
虽然这个过程在计算机中进行了计算,但我们肉眼是看不到的,这时我们需要靠print(变量名称)来输出,即我们需要print(变量名称)来展示给我们变量的值,体现出343434 + 990090的计算的过程,这个print()我们可以称之为输出。
# 计算加法去处的结果
a = 343434 + 990090
print(a)
运行结果:
1333524
我们把代码稍做修改,如下:
# 计算加法去处的结果
print(343434 + 990090)
这个时候我们没有变量a了,那么此时343434 + 990090相对于print()函数来说呢,343434 + 990090为一个输入,print()把343434 + 990090计算的值直接输出(343434 + 990090计算的值,会在计算机内存中临时存储,但不可见),也就是说相对于print()中的括号里的内容来说,任何内容都是输入,print()负责的就是将()中计算的内容输出(函数的传参都是输入,而函数的返回值可以称之为输出。如果调用函数,则函数的计算过程仍会执行,赋给一个变量或者另一个函数时,则被调用函数此时又变为输入)。
实际编程实践中,我们会有大量的通过a = 输入或者print(输入)的方式来进行计算,因此理解计算过程中的输入与输出,是比较重要的一个环节
。
另外a这个变量名称也不是随便能取的!!!
变量的名称取名需要满足python编程语言的规则。规则是,只能英文、数字、下划线的组合,且不能以数字开头,同时不能跟语法关键字(后面会一一讲到)重名。
所以取名是一个较难的事,靠谱的方法是用英文,比如name = “那美那美”,而不是mz = “那美那美”(mz是拼音),不知道英文的时候,请用翻译软件。原因嘛,英文虽然很烂,还有翻译软件,如果是拼音,鬼才晓得你的意思,毕竟代码是可能会给其它人看、用的。
总结
- 代码执行的顺序是怎样的
- 输入数据与输出数据的关系是怎样的
- 什么是变量