Python变量的定义和运算符的使用

 更新时间:2023年05月04日 10:38:05   作者:爱敲代码的三毛  
这篇文章主要介绍了Python变量的定义和运算符的使用,Python和C/Java不同,在定义变量的时候不需要显示的指定变量的类型,在赋值的时候自动就会确定类型,需要的朋友可以参考下

常量和表达式

1. 简单引入

我们可以先简单来看一下Python的加减乘除

print(1 + 2 + 5)
print(1 + 2 * 5)
print(1 + 2 - 5)
print(1 + 2 / 5)
# 运行结果
8
11
-2
1.4

我们发现加减乘和其它语言基本每区别,但是除法在其它语言比如 C/Java中整数除以整数结果还是整数,也就是小数部分会被截断,但是在Python中不会被截断,这样更符合人的日常计算的直觉

  • print 是一个 Python 内置的 函数
  • 可以使用 + - * / ( ) 等运算符进行算术运算. 先算乘除, 后算加减
  • 运算符和数字之间, 可以没有空格, 也可以有多个空格. 但是一般习惯上写一个空格(比较美观)

2. 变量的命名规则

  • 变量必须由数字、字母和下划线构成,不能包含其它特殊符号,且不能以数字开头
  • 变量名不能和关键字冲突
  • 在Python中,变量名是区分大小写的
  • 变量命名建议使用驼峰命名法(除第一个单词其它单词第一个字母用大写),或者是蛇形名命名法(用下划线分割多个单词)
userName = '驼峰命名法'
user_name = "蛇形命名法"
_test = 10

3. 变量的类型

Python和C/Java不同,在定义变量的时候不需要显示的指定变量的类型,在赋值的时候自动就会确定类型

1)整数

tmp = 10
print(type(tmp))
# 运行结果
<class 'int'>

type是Python内置的函数,可以使用type来查看一个变量的类型 注意:和C/Java等语言不同,Python的int类型变量,能表示的数据范围是没有上限的,只要内存足够,理论上可以表示无限大小的数

tmp = 1234567891011121314
print(tmp)

因为Python的int是可以根据要表示的数据大小自动扩容,所以Python就没有像long、byte/short这些类型了

2)浮点数

tmp = 3.14
print(type(tmp))
# 运行结果
<class 'float'>

注意:和C/Java语言不同,Python的小数只有float一种类型,没有double类型,但是实际上python就相当于C/Java的double,表示的是双精度浮点数(占8个字节)

3)字符串

str1 = 'hello'str2 = "world"print(type(str1))print(str1)print(str2)# 运行结果<class 'str'>helloworldastr1 = 'hello'
str2 = "world"
print(type(str1))
print(str1)
print(str2)
# 运行结果
<class 'str'>
hello
world

在python中,字符串用单引号或者双引号引起来,这两者是每有啥区别

但是出现了字符串中出现了单引号,就可以嵌套了

str3 = "hello:'java'"
str4 = 'hello: "python"'
print(str3)
print(str4)
# 运行结果
hello:'java'
hello: "python"

在Python中还有一个三引号,里面可以包含单引号和双引号

str3 = ''' test "hello:'java'"'''
str4 = """ test "hello:'java' """
print(str3)
print(str4)
# 运行结果
 test "hello:'java'"
 test "hello:'java' 
str3 = "'''test '''"
str4 = '""" test """'
print(str3)
print(str4)
# 运行结果
'''test '''
""" test """

求字符长度 在Python中通过内置函数len求字符串的长度

str1 = 'hello'
str2 = "world"
print(len(str1))
print(len(str2))
str3 = "'''test '''"
str4 = '""" test """'
print(len(str3))
print(len(str4))
# 运行结果
5
5
11
12

字符串拼接 注意:在Python中只能字符串和字符进行拼接,拼接其它类型的变量会报错

str1 = 'hello'
str2 = "world"
print(str1 + str2)
print(str2 + str1)
# 运行结果
helloworld
worldhello

4)布尔类型

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

a = True
b = False
print(type(a))
print(type(b))
# 运行结果
<class 'bool'>
<class 'bool'>

注意事项 如果拿布尔类型和整数或者浮点数类型进行运算那么,True表示1,False表示0.

4. 动态类型特性

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

tmp = 10
print(type(tmp))
tmp = 'test'
print(type(tmp))
tmp = False
print(type(tmp))
# 运行结果
<class 'int'>
<class 'str'>
<class 'bool'>

5. 显示指定类型

虽然在Python不用手动指定类型,但也可以显示的指定类型

a: int = 10
b: str = 'str'
c: float = 3.14

注释

1. 行注释

在Python中# 开头的行都是注释

# 这是第一行注释
# 这是第二行注释

2. 文档字符串

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

  • 可以包含多行内容,
  • 一般放在 文件/函数/类 的开头
  • “”" 或者 ‘’’ 均可 (等价)
"""
这
是
多行注释
"""
'''
这
也是多行注释
'''

输入输出

1.通过控制台输出

前面已经说了使用Python内置函数print进行把数据输出到控制台

number = 10
tmp = False
print(number)
print(tmp)
# 输出
10
False

更多的时候, 我们希望能够输出的内容是混合了字符串和变量的

示例

name = '张三'
age = 18
print(f"name = {name}" f'age = {age}')
# 运行结果
name = 张三age = 18
  • 使用 f 作为前缀的字符串, 称为 f-string
  • 里面可以使用 { } 来内嵌一个其他的变量/表达式

2. 通过控制台输入

python 使用 input 函数, 从控制台读取用户的输入

tmp = input()
print(tmp)

或者有提示的输入

name = input('请输入姓名:')
age = input('请输入年龄:')
print(f'name = {name}')
print(f'age = {age}')
# 运行结果
请输入姓名:张三
请输入年龄:18
name = 张三
age = 18
  • input 的参数相当于一个 “提示信息”, 也可以没有.
  • input 的返回值就是用户输入的内容. 是字符串类型

因为输入数据,默认都是字符串类型的,如果需要就要进行强制类型zhuangh

num1 = int(input("请输入第一个数字:"))
num2 = int(input("请输入第二个数字:"))
print(f'num1 + num2 = {num1 + num2}')

运算符

1. 算数运算符

在Python中有+ - * / % ** // 七种运算符

注意事项1: 0是不能作为除数的,如果作为除数就会抛出异常

print(5/0)

注意事项2: 在Python中整数除以整数得到的结果可能会会是小数,因为不会发生截断

print(9/4)
# 执行结果
2.25

注意事项3: 在Python中 // 这个符号,等同于C/Java中的除号,就是整数除以整数就会得到整数,会发生截断

print(9//4)
运行结果
2

注意事项4: **是次方的意思,比如 3**4 就表示的是 34,它也可以表示小数次方,比如 9**0.5 就表示为对9开方

print(3**4)
print(9**0.5)
运行结果
81
3.0

注意事项5: 正对负数取余,结果会是正数

2. 关系运算符

关系运算符就是用来比较两个操作数的大小是否相等的,<><=>===!=

关系运算符返回的是布尔值,如果表达式为真就返回True如果表达式为假就返回False

a = 10
b = 15
print(a > b)
print(a < b)
print(a >= b)
print(a <= b)
运行结果
False
True
False
True

关系运算符不但可以针对数字进行比较,还能够比较字符串,可以比较字符相等

a = 'hello'
b = 'hello'
print(a == b)
运行结果
True

还可以比较字符串大小,比较字符串大小是通过字典序来比较的,首先看首字母在字母表上的顺序,谁小,谁就排在前面,如果首字母相同,就一次比较第二字母、第三个字母…

a = 'abcd'
b = 'abce'
print(a > b)
print(a < b)
# 运行结果
False
True

注意事项 对于浮点数来说,使用 ==进行比较相等时存在一定的风险的,因为浮点数在内存中的存储和表示,是可能存在误差的,这样的误差在进行算数运算的时候就可能被放大,从而导致 ==的判断出现误判

a = 0.1 + 0.2
b = 0.3
print(a == b)
print(a)
print(b)
运行结果
False
0.30000000000000004
0.3

对于浮点数正确的比较方式:就是不在严格比较相等,而是判定它的差值是否小于允许的误差范围以内

a = 0.1 + 0.2
b = 0.3
print(-0.000001 < a-b < 0.000001)
运行结果
True

3. 逻辑运算符

在Python中逻辑运算符为and or not

  • and 并且:两端为True则为True,一端为False则为False
  • or 或者:两端都为False则为False,否则为True
  • not 逻辑取反:本身为True,取反为False,本身为False取反为True
a = 10
b = 20
c = 30
print(b > a and b > c)
print(b > a or b > c)
print(not a > b)
运行结果
False
True
True

Python一种特殊写法 a < b and b < c 这个等价于a < b < c

短路操作 orand都有短路

  • and:如果前面为假后面的就不会再执行了
  • or:如果前面为真后面就不会再执行了
a = 10
b = 20
c = 30
print(b < a and 10/0)
print(b > a or 10/0)

4. 赋值运算符

链式赋值

a = b = c = 10

多元赋值

a, b, c = 10, 20, 30

示例:交换两个变量的值 传统写法

a = 10
b = 20
tmp = a
a = b
b = tmp

使用多远赋值

a = 10
b = 20
a, b = b, a

注意:Python中不存在像 C/Java的++、–操作

除了上述之外, Python 中还有一些运算符, 比如 身份运算符 (is, is not), 成员运算符 (in, not in), 位运算符 ( & | ~ ^ << >>) 等

到此这篇关于Python变量的定义和运算符的使用的文章就介绍到这了,更多相关Python的变量和运算符内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • pytorch方法测试——激活函数(ReLU)详解

    pytorch方法测试——激活函数(ReLU)详解

    今天小编就为大家分享一篇pytorch方法测试——激活函数(ReLU)详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • Python迭代器与生成器及作用示例详解

    Python迭代器与生成器及作用示例详解

    Python生成器在内存管理、延迟计算、生成无限序列以及提高代码简洁性和可读性方面都具有重要作用,这篇文章主要介绍了Python迭代器与生成器示例详解,需要的朋友可以参考下
    2024-02-02
  • Python实现的计算器功能示例

    Python实现的计算器功能示例

    这篇文章主要介绍了Python实现的计算器功能,涉及Python四则运算、取反、百分比等相关数学运算操作实现技巧,需要的朋友可以参考下
    2018-04-04
  • 用Python写脚本自动评论再也不怕碰到喷子

    用Python写脚本自动评论再也不怕碰到喷子

    这篇文章主要介绍了如何用Python写脚本哎实现网站上自动评论,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-08-08
  • python实现录制全屏和选择区域录屏功能

    python实现录制全屏和选择区域录屏功能

    这篇文章主要介绍了python实现录制全屏和选择区域录屏功能,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-02-02
  • python3.4控制用户输入与输出的方法

    python3.4控制用户输入与输出的方法

    今天小编就为大家分享一篇python3.4控制用户输入与输出的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-10-10
  • opencv-python图像读写模块示例详解

    opencv-python图像读写模块示例详解

    这篇文章主要介绍了opencv-python图像读写模块,本文结合示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-07-07
  • 六个窍门助你提高Python运行效率

    六个窍门助你提高Python运行效率

    这篇文章主要介绍了六个窍门助你提高Python运行效率,本文讲解了关键代码使用外部功能包、在排序时使用键、针对循环的优化、使用较新的Python版本等优化窍门,需要的朋友可以参考下
    2015-06-06
  • Python的pandas类库结构参数

    Python的pandas类库结构参数

    pandas是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的,Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具,需要的朋友可以参考下
    2023-07-07
  • Python学习之pip包管理工具的使用

    Python学习之pip包管理工具的使用

    学习 Python 的过程中,经常会使用 pip 命令去安装第三方模块。pip 是 Python 默认集成的包管理工具,而其本质就是 Python 标准库中的一个包,只是比较特殊一些。本文就来为你你全面揭示一下 pip 包管理工具的使用
    2022-08-08

最新评论