[python 基础系列] 辅助函数,语法基础和变量
Posted GoldenaArcher
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[python 基础系列] 辅助函数,语法基础和变量相关的知识,希望对你有一定的参考价值。
本期的内容有几个部分:
- 简单讲解如何使用 Jupyter notebook
- 对新人友好的三个辅助函数
- 语法基础
- 表达式
- 变量
之前的内容:
使用 Jupyter Notebook
Jupyter Notebook 是一个运行的网页页面,同时也是一个文档。使用 Jupyter Notebook 可以直接在上面运行代码,如:
同时 Jupyter Notebook 也继承了 markdown 的一些特性,因此可以使用简单的语法写出结构分明的文档。
在 Anaconda 已经安装好的前提下,运行 Jupyter Notebook 的方法非常简单。在 Anaconda Prompt/Powershell 中切换到指定的文档目录,随后运行 jupyter notebook
指令,就会开启 Jupyter Notebook 的服务器。
如:
# 切换文件目录
> cd jupyter
# 运行Jupyter Notebook
> jupyter notebook
[I 2021-08-24 21:22:13.617 LabApp] JupyterLab extension loaded from C:\\Users\\user\\anaconda3\\lib\\site-packages\\jupyterlab
[I 2021-08-24 21:22:13.617 LabApp] JupyterLab application directory is C:\\Users\\user\\anaconda3\\share\\jupyter\\lab
[I 21:22:13.625 NotebookApp] Serving notebooks from local directory: C:\\assignment\\jupyter
[I 21:22:13.627 NotebookApp] Jupyter Notebook 6.3.0 is running at:
[I 21:22:13.627 NotebookApp] http://localhost:8888/?token=3b7c14c3fb915aac6d9c9b5e8bf7d77cbbcf13689b55fe8c
[I 21:22:13.630 NotebookApp] or http://127.0.0.1:8888/?token=3b7c14c3fb915aac6d9c9b5e8bf7d77cbbcf13689b55fe8c
[I 21:22:13.630 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[C 21:22:13.872 NotebookApp]
这样 Jupyter Notebook 的服务器就成功开启,而且只要该终端不被关闭,那么就算网页、浏览器被关闭了,对 Jupyter Notebook 做的操作也依旧会被保留。
Jupyter Notebook 的官网是:https://jupyter.org/index.html,如果有能力的话还是推荐看一下 Jupyter Notebook 的官方文档。因为虽然 Jupyter Notebook 集成了 markdown 的一些功能,但是 Jupyter Notebook 本身也往里面增添了一些新的功能与特性,包括不限于引用 CSS 和 javascript,所以使用 Jupyter Notebook 写 Markdown 能够有更高的自由度。
3 个辅助函数
不管是从学习还是排错的角度来说,都是非常有用的三个辅助函数。
print()
是在命令行输出,熟练掌握输出这项技能能够方便的输出参数、变量。
这里主要学习如何通过 print()
输出单行文字以及多行文字。
-
单行文字
# python3 的语法,python2 没有括号,不过鉴于 python2 的流行程度,应该是没有什么特别大的应用场景了 print('hello world')
-
多行文字
-
简单的使用多个
print()
指令可行,但是稍微有点麻烦:
print('hello world') print('hello John')
-
使用换行符符
\\n
去进行换行# 直接在一个字符串中进行输出 print('hello world\\nnew line') # 或使用逗号进行分割 print('hello world\\n','new line')
这也是一个方法,但是 ln1 的代码可读性会低一些。
ln5 的代码又会因为逗号而产生多余的空格,效果上不尽如人意。
注*:如果直接换行就会报错:
print('hello world')
如果想要换行,可以用折行符号来实现:
# 折行符 print('hello \\ world')
因此,也可以利用两两组合的方式产生想要的效果:
print('hello world\\n\\ new line')
-
type
type
是 python 自身的语法,可以返回参数的类型。鉴于 python 是一门不需要声明变量类型的动态语言,type
能提供的帮助也是非常大的。
?
?
是 Jupyter Notebook 自身所提供的功能,它能够根据 pydoc 弹出该函数的说明文档:
当然,如果之前有跟着上一篇文章 Jupyter Notebook - 使用 CSS 及开启代码提示 去配置代码提示功能,就会发现之前实现的代码提示功能,不仅包含函数名的提示,还包含 pydoc 的提示:
语法基础
这里包含的语法,基本上是所有编程语言通用的常见语法。
表达式
首先从常见的 表达式(expression) 说起:
表达式 -> 值(如数字 0-9,字符串,布尔值)
表达式 -> 值 操作符 值
常见的 运算符 包含 +
, -
, *
, /
, %
, =
,等。
-
数值操作:
-
字符串操作:
这里有几个注意点:
-
对于字符串来说,
+
的作用是拼接字符串;*
的作用表示字符串重复几遍。但是-
和/
是无法作用在字符串中的。注意看,这里抛出的异常报错的原因是不支持在 字符串 上使用
/
和-
操作符: -
这里一旦操作符前后的类型不一样,python 就会抛出异常提示开发者。
注意看,这个报错信息说的是字符串上只能 拼接(concatenate) 字符串:
-
-
等号操作符
这里起到了赋值的作用:
=
在 python 起到的是赋值的作用,如果要判断数字是否相等,可以用两个等号==
来判断:
变量
变量的基本使用方法,以及 Jupyter Notebook 中所特别要注意的运算顺序问题。
变量的声明
python 的变量命名和其他的常见语言不太一样:
Java 的语法为:
public int priceOfCar = 10000;
JavaScript 现在饿主流语法为:
const priceOfCar = 10000;
而 python 的语法为:
price_of_car = 10000
相较而言 python 声明方式更加简单,它是一门动态语言,因此不需要像 Java 样指定类型,直接声明变量名即可,而且再之后的实现中,变量的类型是可改的:
除此之外,python 还是一门强类型语言,JavaScript 中可以不通过强制类型转换去,但是如果在 python 中这么操作就会报错:
之所以会提示字符串无法拼接整型,就是因为 python 的类型检查禁止了这个操作。
与 Java 和 JavaScript 相比,python 的命名规范也不太一样,前者使用的是驼峰命名法,即第二个单词的首字母大写;而 python 使用 _
进行分割。
将值存到变量的最大好处就是可以在其他的地方继续使用,尤其是当计算量非常复杂的时候。
举个例子,假设需要将公里换算成英里,那就需要知道 1 k m = 0.621371 m i l e 1km = 0.621371 mile 1km=0.621371mile 这样一个公式。每次计算都复制一遍 0.621371 0.621371 0.621371 相对而言的就很麻烦,但是将 0.621371 0.621371 0.621371 存到变量中去计算就会方便很多:
km_to_mile_diff = 0.621371
# 3km 到 mile 的计算
mi1 = km_to_mile_diff * 3
#99km 到 mile 的计算
mi2 = km_to_mile_diff * 99
print(mi1)
在进行更加复杂的计算时,使用变量就会方便很多。
同样,为了方便阅读,变量名最好起有意义的名字,否则所有的变量名都是 a
, b
, c
, x
, y
, z
之类的,一来很容易起冲突,二来意义不明确,无法一眼就看出来着个变量名是做什么的。
变量运行的先后顺序
这一部分是 Jupyter Notebook 的特性,因为在其他的程序中,除非进行特殊配置,否则代码基本都是按序执行。但是在 Jupyter Notebook 中,用户可以单独运行某一行,这个时候就会造成异常。
以上是关于[python 基础系列] 辅助函数,语法基础和变量的主要内容,如果未能解决你的问题,请参考以下文章
python 小白(无编程基础,无计算机基础)的开发之路 辅助知识4 .format