python基础语法(1)

简介: python基础语法(1)

变量是什么

给定四个数, 67.5, 89.0, 68.6, 98.5, 编写代码, 求这四个数的方差

提示: 方差的计算: 每一项减去平均值, 再计算平方和, 最后除以(项数 - 1)


avg = (67.5 + 89.0 + 68.6 + 98.5) / 4
sum = (67.5 - avg) **2 + (98.0 - avg ) **2 + 
(68.6 - avg) **2 + (98.5 - avg) **2
ret = sum / 3
print(sum)

通过上面的例子, 我们可以清楚地看到: 平均值(avg) 被使用多次, 如果我么不用一个东西去暂时存储avg, 就会在使用它的地方, 频繁地计算(67.5 + 89.0 + 68.6 + 98.5) / 4 ==>

需要把一些计算的中间值保存起来, 这个时候就会用到变量

注意:


avg, sum, ret 均为变量

(**)在python中表示乘方运算, **2 就是求平方

变量可以视为是一块能够容纳数据的空间, 这个空间往往对应到"内存" 这样的硬件设备


我们可以把内存想象成是一个宿舍楼, 这个宿舍楼上有很多房间, 每个房间都可以存放数据

衡量内存的一个重要指标就是内存空间的大小, 比如我的电脑内存是 16GB, 这个数字越大, 意味着内存的存储空间越大, 能够存放的数据(变量)就越多


变量的语法

(1)定义变量

a = 10

创建变量的语句非常简单, 其中


a 为变量名. 当我们创建很多个变量的时候, 就可以用名字来进行区分.

= 为赋值运算符, 表示把 = 右侧的数据放到 = 左侧的空间中.

注意: 变量的名字要遵守一定规则.

硬性规则(务必遵守)


变量名由数字字母下划线构成.

数字不能开头.

变量名不能和 “关键字” 重复.

变量名大小写敏感. num 和 Num 是两个不同的变量名.

软性规则(建议遵守)

变量名使用有描述性的单词来表示, 尽量表达出变量的作用.

一个变量名可以由多个单词构成, 长一点没关系, 但是含义要清晰.

当变量名包含多个单词的时候, 建议使用 “驼峰命名法”. 形如 totalCount , personInfo 这种, 除了首个单词外, 剩余单词首字母大写.

数学上, 变量通常使用 x, y, z 这种简单的英文字母或者拉丁字母表示. 但是在编程中不建议这样使用.

原因是编程中, 一个程序里通常会同时创建出很多个变量. 如果只是使用单个字母表示, 在变量多了的时候, 就很难记住哪个变量是干啥的, 从而给维护程序带来了一定的困难. 因此我们更建议使用带有明确描述性的名字, 来表示变量的用途.


(2)使用变量

1.定义变量

a = 10
print(a)

2.修改变量

a = 20
print(a)

注意: 在 Python 中, 修改变量也是使用 = 运算, 看起来和定义变量没有明显区别.

原因: 因为在python中定义变量可以不写出变量类型, 是根据后面初始化的内容确定变量的类型


3.两个变量之间的赋值

a = 10
b = 20
# 将 b的值赋给a, 此时 a的值发生了变化, b的值并没有发生变化
a = b
print(a, b)
*****
20 20
*****

变量的类型

变量里面存储的不仅仅是数字, 还可以存储其它种类的数据. 为了区分不同种类的数据, 我们引入了 “类型” 这样的概念.

注意: 和 C++ / Java 等语言不同, Python 变量的类型不需要显式指定, 而是在赋值的时候确定的.


(1) 整数

a = 10
print(type(a))
*****
<class 'int'>
*****

注意: 和 C++ / Java 等语言不同, Python 的 int 类型变量, 表示的数据范围是没有上限的. 只要内存足够大, 理论上就可以表示无限大小的数据. (不够会自动扩容)

=> 所以, 在python中, 是没有 shor, long, long long, byte 这些类型, 整形类型就一个 int类型够用了~~


(2) 浮点数

a = 10.5
print(type(a))
*****
<class 'float'>
*****

注意: 和 C++ / Java 等语言不同, Python 的小数只有 float 一种类型, 没有 double 类型. 但是实际上Python 的 float 就相当于 C++ / Java 的 double, 表示双精度浮点数.

相比于单精度浮点数, 双精度浮点数占用的内存空间更多, 同时表示的数据精度更高即可(大概精确到小数点后15 位).

(3) 字符串

1.定义一个字符串变量

a = 'hello python'
print(type(a))
*****
<class 'str'>
*****

使用 ’ ’ 或者 " " 引起来的, 称为 字符串. 可以用来表示文本.

注意: 在 Python 中, 单引号构成的字符串和双引号构成的字符串, 没有区别. ‘hello’ 和 “hello” 是完全等价的. (这里跟C++ Java不一样哦)

2.使用 len 函数来获取字符串的长度.

a = 'hello python'
print(len(a))
*****
12
*****

3.可以使用 + 针对两个字符串进行拼接.

a = 'hello'
tem = ' '
b = 'python'
print(a + tem + b)
*****
hello python
*****

注意: 此处是两个字符串相加. 不能拿字符串和整数/浮点数相加.


a = 'hello'
b = 10
print(a + b)
*****
TypeError: can only concatenate str (not "int") to str
*****

4.输出带有" " 或者 输出带有 ’ ’ 或者 输出既有" " 又有 ’ ’

1 字符串里面只有" ", 那么字符串就用 ’ ’

print(' my name is "muyu" ')
*****
my name is "name"
*****


2 字符串里面只有’ ', 那么字符串就用" "


print("my name is 'muyu' ")
*****
my name is 'muyu'
*****

3 字符串里面既有 ’ ’ 又有 " ", 那么字符串就用三引号(三个单引号 或者 三个双引号)


print(''' "my" name is 'muyu' ''')
print(""" "my" name is 'muyu' """)
 *****
 "my" name is 'muyu' 
 "my" name is 'muyu' 
 *****

(4) 布尔

布尔类型是一个特殊的类型, 取值只有两种, True (真) 和 False (假).

注意: 有大写哦, 在C++ / Java中, 是true 和 false


print(''' "my" name is 'muyu' ''')
print(""" "my" name is 'muyu' """)
 *****
 "my" name is 'muyu' 
 "my" name is 'muyu' 
 *****

(5) 其他

除了上述类型之外, Python 中还有 list(列表), tuple(元组), dict(字典), 自定义类型 等等. 我们后续再介绍.


为什么要有这么多类型?

(1) 类型决定了数据在内存中占据了多大空间

(2) 类型约定了能对这个变量做什么样的操作

例如: int/ float 类型的变量, 可以进行 + - * / 等操作

而str类型的变量, 只能进行 + (并且是字符串拼接), 不能进行 - * /, 但是还能使用 len等其他操作


总结: 类型系统其实是在对变量进行 “归类”. 相同类型的变量(数据) 往往具有类似的特性和使用规则.

动态类型特性

在 Python 中, 一个变量是什么类型, 是可以在 “程序运行” 过程中发生变化的. 这个特性称为 “动态类型” .


a = 10
print(type(a))
a = 'hello'
print(type(a))
*****
<class 'int'>
<class 'str'>
*****

在程序执行过程中, a 的类型刚开始是 int, 后面变成了 str.


C++/Java 这样的语言则不允许这样的操作. 一个变量定义后类型就是固定的了. 这种特性则称为 “静态类型”.


动态类型特性是一把双刃剑:


对于中小型程序, 可以大大的解约代码量(比如写一段代码就可以同时支持多种类型).

对于大型程序, 则提高了模块之间的交互成本. (程序猿 A 提供的代码难以被 B 理解).


注释

注释是什么

注释是一种特殊的代码, 它不会影响到程序的执行, 但是能够起到解释说明的作用, 能够帮助程序猿理解程序代码的执行逻辑.


写代码是一件比较烧脑的事情, 读代码同样也非常烧脑. 相比于一板一眼的代码, 一些口语化的描述能更好的帮助程序猿理解程序.


注释的语法

(1) 注释行

使用 # 开头的行都是注释


# 这是一行注释

(2) 文档字符串

使用三引号引起来的称为 “文档字符串”, 也可以视为一种注释


可以包含多行内容

一般放在 文件/函数/类 的开头

三个单引号 或者 三个双引号用来注释都行

'''
文档字符串
文档字符串
'''
""""
文档字符串
文档字符串
"""

注释的规范

1.内容准确: 注释内容要和代码匹配, 并能够在代码修改时能够及时更新

2.篇幅合理: 注释应该适中, 表达出主要思想就可; 不要太简单, 也不要长篇大论

3.积极向上: 注释不要包含负能量


To quote a wise one–study to be accomplished, not affluent.Follow the excellence, and success will chase you.——the film 3 Idiots

译:有位智者说,学习是为了完善人生,而非享乐人生。追求卓越,成功自会随你而来。

——《三傻大闹宝莱坞》


相关文章
|
人工智能 Ubuntu IDE
【Python】基础:环境配置与基础语法
本文介绍了Python编程语言及其环境配置方法。Python由Guido van Rossum于1991年创建,以其简洁、易学和强大的功能著称。文章详细讲解了Python的主要特点、Windows和Ubuntu下的安装配置步骤、基础语法、控制流、函数、文件操作、模块使用及面向对象编程等内容,帮助读者快速入门Python编程。
368 4
|
IDE 数据挖掘 开发工具
Python作为一种广受欢迎的高级编程语言,以其简洁的语法和强大的功能吸引了众多初学者和专业开发者
Python作为一种广受欢迎的高级编程语言,以其简洁的语法和强大的功能吸引了众多初学者和专业开发者
310 7
|
XML 前端开发 数据格式
三分钟搞定 Python XPath 语法
XPath(XML Path Language)是一种用于在 XML 文档中查找信息的语言。它基于树状结构的 XML 文档,可以通过路径表达式来选取节点或节点集。也常常用来解析 HTML。 如果你是一个前端,对用路径获取元素可能陌生又熟悉。陌生是很多的路径,熟悉的路径上又有熟悉的属性和方法。下面我们就来探究一下 XPath 的魅力。
|
9月前
|
Python
课时19:Python的基本语法
今天给大家带来分享的是 Python 的基本语法,分为以下六个部分。 1.在 Python 中严格区分大小写 2.Python 中的每一行就是一条语句,每条语句以换行结束 3.Python 中每一行语句不要过长 4.条语句可以分多行编写,语句后边以\结尾 5.Python 是缩进严格的语言,不要随便写缩进 6.在 Python 中使用#来表示注释
185 2
|
存储 索引 Python
Python 的基本语法
这些是 Python 的基本语法要素,掌握它们是学习和使用 Python 的基础。通过不断地实践和应用,你将能够更深入地理解和熟练运用这些语法知识,从而编写出高效、简洁的 Python 代码
508 62
|
11月前
|
存储 开发者 Python
python基本语法
Python的基本语法简洁而强大,支持多种编程范式,包括面向对象编程和函数式编程。通过掌握变量和数据类型、操作符、控制结构、函数、类和模块等基本概念,可以有效地编写高效、可读的Python代码。无论是初学者还是经验丰富的开发者,Python都提供了丰富的工具和库来满足各种编程需求。
368 13
|
存储 Python
Python编程入门:理解基础语法与编写简单程序
本文旨在为初学者提供一个关于如何开始使用Python编程语言的指南。我们将从安装Python环境开始,逐步介绍变量、数据类型、控制结构、函数和模块等基本概念。通过实例演示和练习,读者将学会如何编写简单的Python程序,并了解如何解决常见的编程问题。文章最后将提供一些资源,以供进一步学习和实践。
232 1
|
存储 C语言 索引
Python 语法及入门 (超全超详细) 专为Python零基础 一篇博客让你完全掌握Python语法
本文全面介绍了Python的基础知识,包括Python的诞生背景、为什么学习Python、Python的应用场景、Python环境的安装、Python的基础语法、数据类型、控制流、函数以及数据容器的使用方法,旨在为Python零基础读者提供一篇全面掌握Python语法的博客。
3817 1
Python 语法及入门 (超全超详细) 专为Python零基础 一篇博客让你完全掌握Python语法
|
机器学习/深度学习 数据挖掘 开发者
Python编程入门:理解基础语法与编写第一个程序
【10月更文挑战第37天】本文旨在为初学者提供Python编程的初步了解,通过简明的语言和直观的例子,引导读者掌握Python的基础语法,并完成一个简单的程序。我们将从变量、数据类型到控制结构,逐步展开讲解,确保即使是编程新手也能轻松跟上。文章末尾附有完整代码示例,供读者参考和实践。
|
存储 Python Perl
python正则语法
本文介绍了正则表达式的基础知识及其在 Python 中的应用。首先解释了为什么要使用正则表达式,通过一个判断手机号的示例展示了正则表达式的简洁性。接着详细介绍了 `re` 模块的常用方法,如 `match()`、`search()`、`findall()`、`finditer()` 等,并讲解了正则表达式的基本语法,包括匹配单个字符、数字、锚字符和限定符等。最后,文章还探讨了正则表达式的高级特性,如分组、编译和贪婪与非贪婪模式。
154 2

推荐镜像

更多