Python基础语法(1)

文章目录

Python基础语法

字面量

字面量:在代码中,被写下来的固定的值,称之为字面量

那么Python中有哪些值可以被写下来?如何在代码中写他们呢?

常用的值的类型

如何基于print语句完成各类字面量的输出

  • print(10),输出整数10
  • print(13.14),输出浮点数13.14
  • print("哈哈哈哈"),输出字符串:哈哈哈哈

注释

  • 单行注释:以 #开头,#右边的所有文字当做说明,而不是真正要执行的程序,起辅助说明作用(注意:#号和注释内容一般建议以一个空格隔开)
  • 多行注释:以 一对三个双引号引起来(""" 注释内容""")来解释说明一段代码的作用使用方法
python 复制代码
# 这是一段注释

"""
这也是一段注释
"""

变量

变量:在程序运行时,能存储计算结果或能表示值的抽象概念。

简单地说,变量就是在程序运行时,记录数据用的

变量的定义格式:变量名称 = 变量的值

例如

python 复制代码
# 定义一个变量,用来记录钱包余额
money = 50
# 通过print语句,输出变量记录的内容
print("钱包还有:",money)

数据类型

Python3 中常见的数据类型有:

  • Number(数字)
  • String(字符串)
  • bool(布尔类型)
  • List(列表)
  • Tuple(元组)
  • Set(集合)
  • Dictionary(字典)

Python3 的六个标准数据类型中:

  • 不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);
  • 可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。
  • 此外还有一些高级的数据类型,如: 字节数组类型(bytes)。

type()语句

语法: type(被查看类型的数据)

py 复制代码
print(type("哈哈哈"))# str

print(type(666))# int

print(type(12.345))# float

变量有类型吗?

变量没有类型,变量存储的数据有类型

数据类型转化

数据类型转换常用到的功能:

  • 从文件中读取的数字,默认是字符串,我们需要转换成数字类型
  • input语句的默认结果是字符串,若需要数字也需要转换
  • 将数字转换成字符串用以写出到外部系统
  • 等等

常见的转换语句

语句(函数) 说明
int(x) 将x抓换位一个整数
float(x) 将x转换为一个浮点数
str(x) 将对象x转换为字符串

注意:任何类型可以转换成字符串,而字符串不可以随意转换成数字,浮点数转整数会有精度丢失

标识符

标识符命名规则

标识符命名中,只允许出现:

  • 英文
  • 中文
  • 数组
  • 下划线(_)

这四类元素。

注意

  1. 不推荐使用中文
  2. 数字不可以用来开头
  3. 不可以使用关键字

运算符

  • 算数运算符: +(加) -(减) *(乘) /(除) //(取整除) %(取余) **(指数)
python 复制代码
print("1+1=",1+1) # 2
print("2-1=",2-1) # 1
print("3*3=",3*3) # 9
print("4/2=",4/2) # 2.0
print("11//2=",11//2) # 5
print("9%2=",9%2) # 1
print("2**2=",2**2) # 4
  • 赋值运算符
  • 复合赋值运算符: += -= *= /= %= **= //=

字符串扩展

字符串的三种定义方式

  • 字符串在python中有多种定义方式:
  1. 单引号定义法:name = '这是一个字符串'
  2. 双引号定义法:name = "这是一个字符串"
  3. 三引号定义法:name = """这是一个字符串"""

三引号定义法,和多行注释的写法一样,同样支持换行的操作。使用变量去接收它,它就是字符串,不是用变量接收它,就可以作为多行注释使用

如果我想要定义的字符串本身,是包含:单引号,双引号自身呢?如何写?

  • 单引号定义法,可以内含双引号
  • 双引号定义法,可以内含单引号
  • 可以使用转义字符(\)来将引号解除效用,变成普通字符串
python 复制代码
# 字符串内包含双引号
name  = '"哈哈哈哈"'
# 字符串内包含单引号
name = "'哈哈哈哈'"
# 使用转义字符\解除引号的效用
name = "\"哈哈哈\""

字符串拼接

如果我们有两个字符串(文本)字面量,可以将其拼接成一个字符串,通过+号即可完成,如:

print("哈哈哈"+"嘻嘻嘻") 输出结果:哈哈哈嘻嘻嘻

字符串格式化

在使用字符串拼接的时候,有两个缺点

  1. 变量过多,拼接起来实在是太麻烦了
  2. 字符串无法和其他类型完成拼接

所以这里使用字符串格式化可以有效解决这个问题

python 复制代码
num = 666
num2 = 777
str = "哈哈哈%d" % num
str2 = "嘻嘻嘻%s%s" %(num,num2) 
print(str)
print(str2)

这里可以看出,数字也可以用%s占位,也可以用%d,当然浮点类型也可以用%f

数字精度的控制

python 复制代码
num= 178.99
num2 = 22
message = "我的年龄是:%s,我的身高是:%f"%(num2,num)
print(message)
# 结果: 我的年龄是22,我的身高是179.990000

我们可以使用辅助符号"m.n"来控制数据的宽度和精度

  • m,控制宽度,要求数字(很少使用),设置的宽度小于数字自身,不生效
  • .n,控制小数点精度,要求是数字,会进行小数的四舍五入

例如

python 复制代码
num1 = 11
num2=11,345
print("数字11宽度限制5,结果是:%5d" % num1) # 11
print("数字11宽度限制1,结果是:%1d" % num1) # 11
print("数字11.345宽度限制7,小数精度2,结果是:%,7.2f" % num2) # 11.35
print("数字11.345不限制,小数精度是2:%0.2f" % num2) # 11.345

快速写法

目前通过%符号占位已经很方便了,还能进行精度控制,可是追求效率和优雅的python,是否有更优雅的方式来解决问题呢?

那就是通过语法:f"内容{变量}"的格式快速格式化

num= 178.99
num2 = 22
message = "我的年龄是:{num2},我的身高是:{num}"
print(message)
# 结果: 我的年龄是22,我的身高是179.99

这里可以通过结果看出来,快速写法并不会做精度的控制

表达式的格式化

表达式:一条具有明确执行结果的代码语句

如1+1,5*2,就是一个表达式,有具体的结果

python 复制代码
print("1*1的结果是:%d" % (1*1))
print("1*1的结果是:{1*1}")
print("字符串在python中的类型是:%s" % type('字符串'))
相关推荐
Theodore_10222 小时前
4 设计模式原则之接口隔离原则
java·开发语言·设计模式·java-ee·接口隔离原则·javaee
网易独家音乐人Mike Zhou3 小时前
【卡尔曼滤波】数据预测Prediction观测器的理论推导及应用 C语言、Python实现(Kalman Filter)
c语言·python·单片机·物联网·算法·嵌入式·iot
安静读书3 小时前
Python解析视频FPS(帧率)、分辨率信息
python·opencv·音视频
----云烟----4 小时前
QT中QString类的各种使用
开发语言·qt
lsx2024065 小时前
SQL SELECT 语句:基础与进阶应用
开发语言
小二·5 小时前
java基础面试题笔记(基础篇)
java·笔记·python
开心工作室_kaic5 小时前
ssm161基于web的资源共享平台的共享与开发+jsp(论文+源码)_kaic
java·开发语言·前端
向宇it5 小时前
【unity小技巧】unity 什么是反射?反射的作用?反射的使用场景?反射的缺点?常用的反射操作?反射常见示例
开发语言·游戏·unity·c#·游戏引擎
武子康5 小时前
Java-06 深入浅出 MyBatis - 一对一模型 SqlMapConfig 与 Mapper 详细讲解测试
java·开发语言·数据仓库·sql·mybatis·springboot·springcloud
转世成为计算机大神6 小时前
易考八股文之Java中的设计模式?
java·开发语言·设计模式