当前位置: 首页 > news >正文

python基础语法Ⅰ

python基础语法Ⅰ

  • 常量和表达式
  • 变量是什么
  • 变量的语法
      • 1.定义变量
      • 使用变量
  • 变量的类型
      • 1.整数
      • 2.浮点数(小数)
      • 3.字符串
      • 4.布尔
      • 5.其他
  • 动态类型特征
  • 注释
      • 注释是什么
      • 注释的语法
          • 1.行注释
          • 2.文档字符串
      • 注释的规范

常量和表达式

我们可以把python当作一个计算器,来进行一些算术运算符.

print(1 + 2 - 3)
print(1 + 2 * 3)
print(1 + 2 / 3)

在这里插入图片描述
注意:

  • print是一个 Python内置的函数,py的函数稍后详细介绍
  • 可以使用+ - * / ()等运算符进行算数运算,先算乘除后算加减.
  • 运算符和数字直接,可以没有空格,也可以多个空格,习惯多写一个空格(比较美观).

形如 1 + 2 - 3 这样是算式, 在编程语言中称为表达式, 算式的运算结果, 称为 表达式的返回值其中 1 , 2 , 3 这种称为 字面值常量, + - * / 这种称为运算符或者操作符.

**注意:**熟悉C/java的同学可能认为2/3的结果等于0(小数部分被截断).但是在python中结果则是一个更小的数,更符合平常我们人类的直觉逻辑.

变量是什么

变量指的是,有时候我们需要进行一些较为复杂的运算,需要把一些计算的中间结果保存起来,这个时候就需要用到变量.

示例:

给定四个分数, 67.5, 89.0, 12.9, 32.2 , 编写代码, 求这四个分数的方差.
PS: 方差的计算过程: 取每一项, 减去平均值, 计算平方, 再求和, 最后除以 (项数 - 1)

在这个代码中,就需要先计算这四个数字的平均值,然后再计算方差,这就需要把计算的平均值使用变量来保存起来.

avg = (67.5 + 89.0 + 12.9 + 32.2) / 4
total = (67.5 - avg) ** 2 + (89.0 - avg) ** 2+ (12.9 - avg) ** 2 + (32.2 - avg) ** 2
result = total / 3
print(result)

注意:

  • avg,total,result均为变量
  • **在python中表示乘方运算,**即为求平方

变量的语法

1.定义变量

a = 10

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

  • a为变量名,当我们创建很多个变量时,可以用名字来进行区分.
  • =为赋值运算符,表示把右侧的数据放到=左侧的空间中.

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

  • 变量名称必须由字母、数字、下划线组成.
  • 数字不能开头.
  • 变量名不能和“关键字”重复.
  • 变量名大小写铭感.num和Num是两个不同的变量.

还有一些软性要求,也就是做了最符合一个优秀程序员的标准:

  • 变量名使用有描述性的单词来表示出变量的作用(个人建议准备一个翻译软件,慢慢培养成为一名专业且优秀的程序员)
  • 变量可以包含多个单词,单词可以长,含义一定要清晰(建议使用“驼峰命名法”,如:totalCount)

使用变量

读取变量的值

a = 10
print(a)
#修改变量的值
a = 20
print(a)
#修改变量也是使用 = 运算符,看起来和定义变量没有明显的区别。

当然也可以使用一个变量的值赋给另一个变量

a = 10
b = 20
a = b
print(a)
print(b)

变量的类型

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

注意:

  • 和C++/Java等语言不同,python变量的类型不需要显示的指定,二十在赋值的时候确定的.

1.整数

a = 10
print(type(a))

在这里插入图片描述
**注意:**跟其它语言的区别就是python中的int类型表示的数据范围是没有上限的.只要内存足够大,理论上可以存下无限大小的数据.

2.浮点数(小数)

a = 0.5
print(type(a))

在这里插入图片描述
注意: 和C++/Java等语言不同,python的小数只有 float一种类型, 没有 double 类型. 但是实际上python 的 float 就相当于 C++ / Java 的double,表示双精度浮点数.

3.字符串

a = 'hello'
print(type(a))

在这里插入图片描述

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

注意: 在 python 中, 单引号构成的字符串和双引号构成的字符串, 没有区别. ‘hello’ 和 “hello” 是完全等价的(需要注意的是,如果字符串内部包含’或者"这个时候我们需要避免相同的符号出现).

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

a = 'hello'
print(len(a))

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

a = 'hello'
b = 'world'
print(a + b)

字符串作为开发中最常用的数据类型,支持的操作方法非常之多,后续细讲.

4.布尔

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

a = True
print(type(a))
b = False
print(type(b))

在这里插入图片描述
布尔类型在咱们后续进行逻辑判断的时候,是非常有用的.

5.其他

除了上述的类型之外还有list,tuple,dict,自定义类型等等,后续详讲.

动态类型特征

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

a = 10
print(type(a))
a = 'hello'
print(type(a))

在这里插入图片描述
在程序执行过程中,a的类型刚开始时int后面变成了str.
C++/Java 这样的语言则不允许这样的操作. 一个变量定义后类型就是固定的了. 这种特性则称为 “静态类型”.

注释

注释是什么

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

# 计算 4 个数字 67.5, 89.0, 12.9, 32.2 的方差
avg = (67.5 + 89.0 + 12.9 + 32.2) / 4
total = (67.5 - avg) ** 2 + (89.0 - avg) ** 2 + (12.9 - avg) ** 2 + (32.2 - avg)
** 2
result = total / 3
print(result)

这个还是上面的代码,这里我们主要看第一行的代码解释,在’#'后面写的被称为注释,注释的代码是不会被解释器解释的.

注释的语法

python中有两种风格的注释.

1.行注释

使用 # 开头的都是行注释

#这是一行注释
2.文档字符串

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

  • 可以包含多行内容
  • “”"或者’''均可(等价)

注释的规范

  1. 内容准确: 注释内容要和代码一致, 匹配, 并在代码修改时及时更新.
  2. 篇幅合理: 注释既不应该太精简, 也不应该长篇大论.
  3. 使用中文: 一般中国公司都要求使用中文写注释, 外企另当别论.
  4. 积极向上: 注释中不要包含负能量(例如 领导帅哥等)
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.dtcms.com/a/240393.html

相关文章:

  • A. Greedy Monocarp
  • 详解什么是One-Hot Encoding (独热编码)
  • 大数据学习(135)-Linux系统性指令
  • MinHook 如何对.NET底层的 Win32函数 进行拦截(上)
  • DAY 49 CBAM注意力
  • MCP笔记:UVX和NPX
  • Angular微前端架构:Module Federation + ngx-build-plus (Webpack)
  • C语言数据结构笔记4:子函数中使用的sizeof 指针无法获取数组的实际大小
  • 国内外UI自动化测试工具全景分析:国产创新与国际领先工具对比
  • 俩人相向而行,何时相遇问题思考。
  • 软件定义车辆加速推进汽车电子技术的未来发展
  • 使用黑马X2C
  • leetcode刷题经验
  • python打卡day49
  • 从零手写Java版本的LSM Tree (二):KeyValue 数据结构
  • 制作一款打飞机游戏68:地面敌人
  • 使用python进行图像处理—像素级操作与图像算术(4)
  • CMake 从 GitHub 下载第三方库并使用
  • 使用python进行图像处理—图像变换(6)
  • 从零手写Java版本的LSM Tree (一):LSM Tree 概述
  • 安宝特方案丨船舶智造AR+AI+作业标准化管理系统解决方案(维保)
  • 用机器学习破解新能源领域的“弃风”难题
  • 深入理解JavaScript设计模式之单例模式
  • Unity中的对象池ObjPool/PoolManager
  • 从零手写Java版本的LSM Tree (三):MemTable 内存表
  • 如何使用CodeRider插件在IDEA中生成代码
  • 写一个shell脚本,把局域网内,把能ping通的IP和不能ping通的IP分类,并保存到两个文本文件里
  • 189. 轮转数组
  • Django RBAC项目后端实战 - 03 DRF权限控制实现
  • fpga系列 HDL : Microchip FlashPro 导出与烧录FPGA