当前位置:首页 » 《休闲阅读》 » 正文

【python】变量类型|输入|输出运算符介绍

20 人参与  2024年11月19日 16:01  分类 : 《休闲阅读》  评论

点击全文阅读


文章目录

1.常量和表达式2.变量与类型2.1 变量的语法2.1.1 定义变量2.1.2 变量命名规则2.1.3 使用变量 3. 变量的类型3.1 整型3.2 浮点型3.3 字符串3.4 布尔类型3.5 为什么需要多种类型3.6 动态类型 4.注释4.1 注释语法4.1.1 注释行4.1.2 文档字符串 4.1.3 注释的规范 5.输入输出5.1 通过控制台输出5.2 通过控制台输入 6.运算符6.1 算术运算符6.2 关系运算符6.3 逻辑运算符6.4 赋值运算符

1.常量和表达式

我们可以把Python当成一个计算器,来进行一些算术运算。

print(1+2+3)print(2*9)print(9/2)#打印结果#6#18#4.5

print是python的一个内置函数,功能就是打印到显示器中。

在运算符和数字间,可以没有空格也可以存在空格,为了美观通过会带有一个空格。

值得注意的是,在python中直接/结果是会保留一位整数的,这点和C/C++以及Java是不同的。不过你想要取整的化可以使用2 // 3来执行。

2.变量与类型

在C/C++中,当我们要进行计算时,通过需要把一些计算的中间过程保存起来,这个时候需要使用到变量了。

a = 1b = 2c = a+bprint(c)#打印结果:3

这里的a,b,c就是变量。
变量可以视为一块能够容纳数据的空间,这个空间往往对应到内存这样的硬件上。

2.1 变量的语法

2.1.1 定义变量

a = 100# a为变量名   = 为赋值运算符    100为变量的赋值

通过定义变量,如果你学过C/C++或者Java你会发现。这里没有确定变量的类型,其实在python中中是不需要确定变量的类型,其类型会根据你的赋值,自动定义。

2.1.2 变量命名规则

变量名由数字字母下划线构成。数字不能开头。变量名不能和关键字重复。变量名区分大小写。变量名尽量使用有意义的单词来命名。当变量名由多个单词组成时,建议使用“驼峰命名法”,比如:totalCount,除了首个单词外,其余单词首字母大写。

2.1.3 使用变量

读取变量的值

a = 10print(a)

修改变量的值

a = 10a = 20print(a)

值得注意的是,因为python当成定义不需要确定类型的缘故,修改变量的值和定义变量的时看起来是没有区别的
赋值给其他变量

a = 10b = aprint(a)print(b)

3. 变量的类型

变量里面存储的不仅仅是数字,还可以存储其他种类的数据,我们引入了类型这样的概念。
上文也说了,python和C/C++/Java是不同的,不需要显式指定,而是在赋值的时候确定的。
那么如何知道python中的类型呢?
python提供了type这个内置函数。

a = 10#整型b = 1.1#浮点型c = "abc"#字符串d = True#布尔类型print(type(a))print(type(b))print(type(c))print(type(d))"""打印结果<class 'int'><class 'float'><class 'str'><class 'bool'>"""

3.1 整型

和C++/java等语言不同,python的int类型变量,表示的数据范围是没有上限的,只要内存足够,理论上是可以无限大的。

3.2 浮点型

与C++/java等语言不同,python的小数只有float一种类型,没有double类型,但实际上python中的float就相当于C++/java中的double,表示双精度浮点数。

3.3 字符串

在python中使用''或者""都可以表示字符串。
可以利用内置函数len来测量字符串的长度。

a = 'abcdef'print(len(a))# 打印结果: 6

可以使用+来对两个字符串进行连接。

a = 'hello 'b = 'yui'print(a+b)#打印结果:hello yui

注意不要用不同类型的变量进行相加。

3.4 布尔类型

True 表示真False 表示假

用于逻辑判断。

3.5 为什么需要多种类型

类型决定了数据在内存中占据的多大空间。类型其实也确立你能对这个变量进行怎么的操作。

3.6 动态类型

在python中,一个变量是什么类型,是可以在程序运行过程中改变的,这个特性称为动态类型

a = 10print(type(a))a = "hahaha"print(type(a))'''<class 'int'><class 'str'>'''

在程序运行过程中a的类型由int变成了str

C++/java这种语言是不允许这样的操作的,一个变量定义类型后就固定了。这样的特性就被称为静态类型。

动态类型,尽管会大大节约代码量,但是对于非本代码的创造者来说是会增加阅读难度的。

4.注释

在前面的代码中我已经在运用注释了,那么注释是什么呢?
注释是一种对代码的解释,能够帮助程序员能好的理解代码,同时不会影响程序的运行。

在初期的代码量极少的情况下,注释的作用可能可有可无,但是一旦开始写一些复杂的程序时,注释的作用就非常的大了,如果某段代码你长时间没有接触后在次接触时,注释会为你节约大量的理解时间,对于他人同样如此。

4.1 注释语法

4.1.1 注释行

使用#开始的行都是注释。

#注释

4.1.2 文档字符串

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

可以包括多行内容。一般放在文件/函数/类的开始。'''或者"""都可。
'''文档字符串文档字符串文档字符串'''

4.1.3 注释的规范

内容准确:注释内容要和代码一致,匹配,并在代码修改时及时更新。篇幅合理:注释不应该太精简,同时也不能篇幅太长。

5.输入输出

为了和用户进行交互。

用户把信息传递给程序的过程,称为输入。程序把结果展示给用户的过程,称为输出。
输入和输出最基本的方法就是控制台,用户提供控制台输入一些字符串,程序在通过控制台打印一些字符串。

5.1 通过控制台输出

使用内置函数print输出到控制台

print('hello!!!!!!!!')

输出num = 100

num = 100print(f'num = {num}')#打印结果:num = 100
使用f表示作为前缀的字符串,称为f-string。里面可以使用{}来内嵌一个其他变量的/表达式。

5.2 通过控制台输入

python使用input函数来读取用户的输入。

num = 0num = input('请输入一个整数:')print(f'你输入的整数是:{num}')'''请输入一个整数:1000你输入的整数是:1000'''
input的参数相当于一个提示信息,可有可无,看需求。input的返回值就是用户输入的内容,是字符串类型
a = input('请输入第一个整数:')b = input('请输入第二个整数:')print(f'a + b = {a+b}')'''请输入第一个整数:12请输入第二个整数:34a + b = 1234'''

这里的+是字符串拼接。
为了避免这种情况,我们需要进行类型转化。

a = int(input('请输入第一个整数:'))b = int(input('请输入第二个整数:'))print(f'a + b = {a+b}')'''请输入第一个整数:12请输入第二个整数:34a + b = 46'''

6.运算符

6.1 算术运算符

+ - * / % ** //这些进行算术运算的运算符都是算术运算符。

整数/整数结果可能是小数,而不会截断。%是求余数的意思。**是求乘方,不光能算整数次方,而可以计算小数次方。//是取整除法,当结果为小数时,会像下取整。

6.2 关系运算符

< <= > >= == !=这一系列的运算符被称为关系运算符,它们是在比较操作数间的关系。

<= 小于等于>=大于等于==等于!=不等于
一旦关系表达式符合,那么表达式会返回True,如果不符合,表达式会返回False
a = 100b = 10print(a == b)print(a != b)print(a > b)print(a >= b)print(a > b)print(a <= b)'''FalseTrueTrueTrueTrueFalse'''

除此之外,python还可以进行字符串的比较。

a = 'hello'b = 'world'print(a == b)print(a != b)print(a > b)print(a >= b)print(a > b)print(a <= b)'''FalseTrueFalseFalseFalseTrue'''
直接使用 == 或者!= 即可对字符串内容判断相等。字符串比较大小,规则是字典序。
对于浮点数来说,不能使用 == 判定相等。
print(0.1+0.2 == 0.3)# Falseprint(0.1+0.2)#0.30000000000000004

浮点数在计算机中的表示并不是精确的,在计算过程中,容易出现非常小的误差。
为此我们只能自己限定一个误差范围来进行比较。

a = 0.1+0.2b = 0.3print(-0.000001<(a-b)<0.000001)

6.3 逻辑运算符

ans or not这一系列的运算符称为逻辑运算符。

and 表示 特点:一假则假or 表示 特点:一真则真not 表示 特点:真假转换
a = 10b = 20c = 30print(a < b and b < c)print(a < b and b > c)print(a > b or b > c)print(a < b or b > c)print(not a < b)print(not a > b)'''TrueFalseFalseTrueFalseTrue'''

在python中a<b and b<c可以写成a<b<c这个设定和大部分编程语言都不一样。
关于短路问题

对于and,如果左侧表达式为False,整体一定为False,右侧表达式不再执行。对于or,如果左侧表达式为True,整体一定为True,右侧表达式不再执行。

6.4 赋值运算符

对于=的使用
=是表达赋值的意思,要和==区分
链式赋值

a = b = c = 100

多元赋值

a,b = 10,100

利用多元赋值实现两个变量的交换。

# 常规写法a = 10b = 20tmp = 10a = bb = tmp#多元赋值a = 10b = 20a,b = b,a

复合赋值运算符
python还有一些复合赋值运算符,比如:+= -= *= /= %=

# a += 1 等同于 a = a+1a = 10a = a + 1print(a)a = 10a += 1print(a)#11#11

注意:python中不支持++ --这种自增/自减运算符。


点击全文阅读


本文链接:http://zhangshiyu.com/post/188804.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1