Python基础入门知识(2)
接前面的文章:
Python基础入门知识(1)
Python基础入门教学
- 2 Python的基础知识
- 2.2 数据类型
- 2.2.2 数值类型
- 2.2.2.1 整数
- 2.2.2.2 浮点数
- 2.2.2.3 复数
- 2.2.2.4 布尔类型
- 2.2.2.4.1 布尔类型和数值类型之间的转换
- 2.2.2.4.2 布尔类型和字符串之间的转换
- 2.2.3 相关函数
- 2.2.4 英文注解
- 2.3 转义字符
- 2.4 注释
- 2.4.1 注释的编写
- 2.4.2 什么时候改写注释
- 2.5 输入和输出
- 2.6 运算符
- 2.6.1 算术运算符
- 2.6.1.1 +号
- 2.6.1.2 -号
- 2.6.1.3 *号
- 2.6.1.4 /号
- 2.6.1.5 取模%
- 2.6.1.6 幂**
- 2.6.1.7 整除//
- 2.6.2 赋值运算符
- 2.6.2.1 =
- 2.6.2.2 +=
- 2.6.2.3 -=
- 2.6.2.4 *=
- 2.6.2.5 /=
- 2.6.2.6 %=
- 2.6.2.7 **=
- 2.6.2.8 //=
- 2.6.3 比较(关系)运算符
- 2.6.3.1 ==
- 2.6.3.2 !=
- 2.6.3.3 >
- 2.6.3.4 <
- 2.6.3.5 >=
- 2.6.3.6 <=
- 2.6.4 逻辑运算符
- 2.6.4.1 and且
- 2.6.4.2 or或
- 2.6.4.3 not非
- 2.6.5 成员运算符
- 2.6.5.1 in
- 2.6.5.2 not in
- 2.6.6 身份运算符
- 2.6.6.1 is
- 2.6.6.2 is not
- 2.6.7 位运算符
- 2.6.7.1 &按位与
- 2.6.7.2 |按位或
- 2.6.7.3 ^按位异或
- 2.6.7.4 ~按位取反
- 2.6.7.5 <<左移动
- 2.6.7.6 >>右移动
- 2.7 列表
- 2.7.1 列表是什么?
- 2.7.1.1 访问列表元素
- 2.7.1.2 索引从0而不是1开始
- 2.7.1.3 使用列表中的各个值
2 Python的基础知识
2.2 数据类型
2.2.2 数值类型
Python中的数值类型分为,整数int、浮点数float、复数
2.2.2.1 整数
整数用int表示,包括自然数、零、负数,没有小数,对长度没有限制。
整数可以是十进制的,也可以是八进制、十六进制、二进制的。
我们用代码来测试一下:
a = 3
b = 6336842315820842792
c = -5
d = 0
e = 1.3
print(type(a))
print(type(b))
print(type(c))
print(type(d))
print(type(e))
输出:
<class 'int'>
<class 'int'>
<class 'int'>
<class 'int'>
<class 'float'>
我们看到上面4个都是整数,只有最后一个是浮点数。
2.2.2.2 浮点数
刚才我们已经知道了float就是浮点数,浮点数可以是正的,也可以是负的,可以是小数,也可以是用科学计数法表示的小数。
测试一下:
a = 0.5
b = 1.56399
c = -5.54
d = 2.7e2
e = -3.4e5
f = 3.4e-2
print(type(a))
print(type(b))
print(type(c))
print(type(d))
print(type(e))
print(type(f))
输出:
<class 'float'>
<class 'float'>
<class 'float'>
<class 'float'>
<class 'float'>
<class 'float'>
我们可以看到,所有的数字都是浮点数。
扩展:
刚才我们学习了整数和浮点数,现在我们尝试用整数去加上浮点数:
a = 1
b = 0.5
c = a+b
print(c)
print(type(c))
输出:
1.5
<class 'float'>
我们看到整数+浮点数=浮点数
我们再来做一个算式:
a = 1
b = 1.0
c = a+b
print(c)
print(type(c))
输出:
2.0
<class 'float'>
我们看到,虽然1和1.0在数学意义上都是1,但是1.0在python中却是浮点数float。所以整数+浮点数依然是浮点数。
刚才我们做的是加法,现在我们做一个乘法:
a = 1
b = 1
c = a*b
print(c)
print(type(c))a = 1
b = 1.0
c = a*b
print(c)
print(type(c))
输出:
1
<class 'int'>
1.0
<class 'float'>
我们用整数去乘以整数,结果是整数,我们用整数去乘以浮点数,结果是浮点数。
加法和乘法的运算规则是相同的,那么除法呢?
除法会比较特殊,我们来看例子:
a = 2
b = 2
c = a/b
print(c)
print(type(c))
输出:
1.0
<class 'float'>
结果出人意料,是浮点数,但这就是python的规则。
那如果我们想要让上面的答案是整数,是否有办法?
是的,我们有另一个符号,可以让答案变成整数:
a = 2
b = 2
c = a//b
print(c)
print(type(c))
输出:
1
<class 'int'>
我们把“/”变成了“//”,结果就变成了整数。因为“//”是整除的意思,关于运算符号,在后面会有详细介绍。
2.2.2.3 复数
在数学中复数complex我们用j表示,在Python中复数也是用j表示,j大小写都可以。复数是由实部和虚部组成的,虚部就可以用j表示。
2.2.2.4 布尔类型
布尔类型简单来说就是真或假的值,在Python中用True和False表示。需要注意的是:True和False的首字母必须大写,如果小写了,python会报语法错误。
布尔类型的英语是bool。
我们来用代码验证一下:
type(true)
输出:
<class ‘bool’>
type(false)
输出:
<class ‘bool’>
2.2.2.4.1 布尔类型和数值类型之间的转换
我们还可以把布尔类型转换成数字,先来看代码:
print(int(True))
print(int(False))
输出:
1
0
我们看到True转换成了1,False转换成了0。其实1和0就是计算机中的二进制,如果说True和False可以转换成1和0,那么1和0也可以转换成True和False可以转换成1和0,那么1和0也可以转换成。
如下:
print(bool(1))
输出:
True
print(bool(0))
输出:
False
那么其他数字呢?可以转换成True和False吗?
print(bool(2))
print(bool(-5))
print(bool(20.5))
输出:
True
True
True
我们发现,除了0为False,其他所有的数字bool运算过后的结果都为True。
在python中,0的布尔值为False,其他非零数字的布尔值都为True。
2.2.2.4.2 布尔类型和字符串之间的转换
还是来先看代码:
print(bool("abc"))
print(bool(""))
输出:
True
False
这里我给了一段字符串和一段空字符串,我们发现空字符串的布尔值为False,其实这和上面讲到的数字是一个原理。空就是0,而0的布尔值就为False,而其他非空字符串就为True。
在后面我会讲到列表、集合等内容,这些类型的布尔值计算和字符串一样。只要是空列表、空集合都是False,其他非空的都是True。
2.2.3 相关函数
type() 函数返回指定对象的类型
2.2.4 英文注解
type 类型,品种
2.3 转义字符
转义字符是为了表示一些无法“看见”的字符(如换行符),或者与语言本身语法有冲突的字符(如英文缩写的单引号)。转义字符如下:\n、\’、\"、\t、\\、r。
1.\n:代表换行
用法如下:
print("hello world")
print("hello \n world")
输出:
hello world
hello world
\n的作用就相当于回车。
2.\’:代表一个单引号
上面有一个句子“I’m Susan.”这里面就有一个单引号,之前说过,这种情况外面要用双引号括起来。
但是如果一定要用单引号,就可以用到“\’”,这个转义字符。
a = 'I\'m Susan.'
print(a)
输出:
I'm Susan.
只要在单引号‘前加一个反斜杠\就可以输出单引号。
3.\":代表一个双引号
用法和\'是一样的。
4.\t:代表水平制表。
例如:
b = "ddd\tcccc"
print(b)
输出:
ddd cccc
我们可以看到打印的结果是在中间打印了一个制表符。
5.\\:代表了一个反斜杠
例如我们常常会在python中输入一个URL,URL中有很多反斜杠,如果要显示这些反斜杠,就要用到\\这个转义字符。
例如:
print("C:\\Users\\PC\\Desktop\\website\\image\\dx.txt")
输出:
C:\Users\PC\Desktop\website\image\dx.txt
6.r:代表所有的转义字符都不转义。
还是拿上面的URL举例:
print(r"C:\Users\PC\Desktop\website\image\dx.txt")
输出:
C:\Users\PC\Desktop\website\image\dx.txt
只要在该字符串前加一个r就可以原封不动的把原字符串都打印出来,节省了添加转义字符\的时间。
2.4 注释
等我们以后的代码越写越长,越写越多时,就会发现很多地方需要注释,去阐述说明。
2.4.1 注释的编写
在Python中,单行注释的符号是“#”,多行注释的符号可以是三个单引号,也可以是三个双引号。注释可以自己为一行,也可以跟在表达式的行末。当写下注释后,解释器就会忽略这些内容,不会去执行。因为注释是给人看的,而不是解释器。
例如:
# 向大家问好
print("Hello!")
输出:
Hello
大家可以发现,第一行解释器忽略了,直接执行了第二行。
更多举例:
print("Hello!") # 向大家问好
'''
向大家问好
'''
print("Hello!")
2.4.2 什么时候改写注释
写注释的目的,一方面是给自己看,一方面是给别人看。比如说有一个项目要长期开发,如果没有注释,时间一长,很有可能自己都不记得为什么要这么做。
而且在很多大型的项目中,会有很多人协同工作。如果不写注释,别人很有可能很难理解你的想法。
2.5 输入和输出
在上面我们用到了大量的print()函数,print()函数实际上就是一个输出的过程。
那么python中也有输入,输入用到的函数就是input()函数。
用法如下:
input('input your name:')
input your name:shirley
当执行完这串代码后,会有一个互动的过程,会让你按照要求填写内容。
2.6 运算符
2.6.1 算术运算符
python中的算术运算符有+、-、*、/、%、**、//
2.6.1.1 +号
例如:
a = 10
b = 4
print(a + b)
输出:
14
python中的“+”,不仅可以将两个数值相加,也可以将两个字符串相加。
参考前面的【2.2.1.1 拼接字符串】。
2.6.1.2 -号
先来看代码:
a = 20
b = 5
print(a - b)
输出:
15
2.6.1.3 *号
python中的“*”号和“+”号一样,不仅可以用在数值类型上,也可以用在字符串上。
例如:
a = 2
b = 5
print(a * b)
输出:
10
再例如:
a = "python"
print(a * 3)
输出:
pythonpythonpython
我们可以看到“python”打印了3次。
再来一个复杂点的:
a = "python"
b = "world"
print(a * 3 + b * 2)
输出:
pythonpythonpythonworldworld
我们可以看到在这段代码中,既有*号,也有+号。python中的算术运算符和数学中的运算符一样,计算顺序也一样。
2.6.1.4 /号
还是先看代码:
a = 10
b = 5
print(a / b)
输出:
2.0
我们可以看到最后的结果并不是2,而是2.0,这也是我们要注意的一个点:python中所有的除法运算最后得出的结果都是浮点数。
2.6.1.5 取模%
python中的取模和数学中的取余数是一样的。
代码如下:
a = 13
b = 3
print(a % b)
输出:
1
计算过程如下:13/3=4.333……,3*4=12,13-12=1,所以余数为1
2.6.1.6 幂**
先看代码:
a = 3
b = 4
print(a ** b)
输出:
81
这段代码求的是3的4次方,所以答案是81。
2.6.1.7 整除//
还是先看代码:
a = 15
b = 4
print(a // b)
输出:
3
整除就是取商的整数部分,这些和数学中的内容都是一样的。
2.6.2 赋值运算符
赋值运算符有:=、+=、-=、*=、/=、%=、**=、//=
2.6.2.1 =
等号“=”,简单来说就是将等号右边的值赋值给等号左边。
直接上代码:
x = 1
2.6.2.2 +=
接着来做一道计算题
x = 1
x = x + 1
print(x)
输出:
2
将上面的代码简化一下:
x = 1
x += 1
print(x)
我们发现“x = x + 1”和“x += 1”的意思是一样的,所以“+=”的意思就是左边的变量在自身的基础下再增加一个右边的数值。
2.6.2.3 -=
-=的原理和+=一样,就是在自己的基础上再减去一个右边的数值。
“x -= 1”就是“x = x - 1"
2.6.2.4 *=
*=的原理和+=一样,就是在自己的基础上再乘上一个右边的数值。
"x *= 1"就是”x = x * 1“
2.6.2.5 /=
/=的原理和+=一样,就是在自己的基础上再除去一个右边的数值。
“x /= 1"就是"x = x / 1”
2.6.2.6 %=
%=的原理和+=一样,就是在自己的基础上再取模一个右边的数值。
“x %= 1"就是"x = x % 1”
2.6.2.7 **=
**=的原理和+=一样,就是在自己的基础上再幂一个右边的数值。
“x **= 1"就是"x = x ** 1”
2.6.2.8 //=
//=的原理和+=一样,就是在自己的基础上再整除一个右边的数值。
“x //= 1"就是"x = x // 1”
2.6.3 比较(关系)运算符
比较(关系)运算符是用来比较两个数值之间的关系,最后返回的值一定是布尔值。
2.6.3.1 ==
==是比较两个值是否相等,例如:
print(1 == 1)
输出:
True
2.6.3.2 !=
!=是比较两个值是否不相等,例如:
print(1 != 1)
输出:
False
2.6.3.3 >
>是比较一个数值是否大于另一个数值,例如:
print(1>1)
输出:
False
2.6.3.4 <
<是比较一个数值是否小于另一个数值,例如:
print(1 < 2)
输出:
True
2.6.3.5 >=
>是比较一个数值是否大于或者等于另一个数值,例如:
print(2 >= 1)
输出:
True
2.6.3.6 <=
<是比较一个数值是否小于或者等于另一个数值,例如:
print(1 <= 2)
输出:
True
2.6.4 逻辑运算符
逻辑运算符主要是用来操作布尔类型的,返回结果也是布尔类型的。
2.6.4.1 and且
如果操作的两个基本类型都是True,则为True,如果其中有一个是False,则为False。
例如:
print(True and True)
print(True and False)
print(False and False)
输出:
True
False
False
2.6.4.2 or或
如果其中有一个是True,那么就为True,否则就为False。
print(True or True)
print(True or False)
print(False or False)
输出:
True
True
False
2.6.4.3 not非
和and和or不同,not只操作一个变量。
例如:
print(not True)
print(not False)
输出:
False
True
2.6.5 成员运算符
成员运算符是用来判断一个元素是否在另外一组元素里,返回值是布尔类型。
2.6.5.1 in
我们直接来看代码:
print(2 in [1,2,3])
输出:
True
2.6.5.2 not in
in是判断元素是否在一组元素中,not in就是判断元素是否不在一组元素中。
例如:
print(1 not in [1,2,3])
输出:
False
2.6.6 身份运算符
身份运算符最终返回的值是布尔值。
2.6.6.1 is
先看一个案例:
a = 1
b = 2
print(a is b)
输出:
False
如果两个变量取值相等,则is返回True。另外,is和==是有一定区别的。例如:
a = 1
b = 1.0
print(a == b)
print(a is b)
输出:
True
False
==所比较的是两个变量的值是否相等,而is则比较的是身份是否相等。
2.6.6.2 is not
2.6.7 位运算符
位运算符是把数字当作二进制数进行运算。
2.6.7.1 &按位与
先来看一个代码:
a = 2
b = 3
print(a & b)
输出:
2
这个计算结果是怎么得出的?来看一张图:
首先,我们要把2和3分别转换成二进制,也就是10和11。
接着,把每一位做一个比较。1和1比较,都是1,返回1;1和0比较,只有有一位是0,就返回0。
所以最后的返回值就是10。
而二进制的10转换成十进制,就是2。
2.6.7.2 |按位或
还是先来看代码:
a = 2
b = 3
print(a | b)
输出:
3
还是用刚才的图来解释按位或的计算逻辑:
按位或也是把每一位都做一个比较,但按位或是只要有一个数字为1,那么返回值就为1,所以上面的计算结果返回值就是11,换成十进制就是3。
2.6.7.3 ^按位异或
2.6.7.4 ~按位取反
2.6.7.5 <<左移动
2.6.7.6 >>右移动
2.7 列表
2.7.1 列表是什么?
列表由一系列按特定顺序排列的元素组成。元素可以是由任何字母、数字、汉字,甚至是布尔值组成的。列表中的元素可以是任何内容,元素与元素之间也可以没有任何关系。
在Python中,我们用"[ ]"来表示列表,并用逗号来分隔其中的元素。
例如,我们有一家宠物店,我们先来介绍猫:
cats = ['ear','nose','face','foot','tail','beard']
print(cats)
输出:
['ear', 'nose', 'face', 'foot', 'tail', 'beard']
现在我们知道,列表中的元素可以由字符串组成,也可以由数值组成,但列表中的元素类型并不是单一的,我们可以用字符串+数值+布尔值组成。如下:
text = ["hello", "world", 3, 5, True, False]
print(text)
输出:
['hello', 'world', 3, 5, True, False]
还有一种特殊的列表,如下:
text = [[1,2],[3,4],[5,6]]
这种列表,在python中称之为嵌套列表。
现在我们只是把列表打印出来了,但并没有访问到里面的元素。
2.7.1.1 访问列表元素
列表是有序集合,如果要访问列表里的元素,必须告诉Python元素的位置或索引。
例如,我要读取上面cats列表中的第1个元素:
cats = ['ear','nose','face','foot','tail','beard']
print(cats[0])
输出:
ear
这样我们就得到了第1个元素ear,而不包括方括号、引号、逗号这些。
但是我们发现第1个元素ear的索引号并不是1而是0,这是为什么?
2.7.1.2 索引从0而不是1开始
其实,我们之前有简单介绍过索引,很多编程语言的索引都是从0开始的。
究其原因,一是为了编程简便,二是为了看上去更优雅。
2.7.1.3 使用列表中的各个值
我们可以用列表中的元素来造句。
例如:
cats = ['ear','nose','face','foot','tail','beard']
sickness = "The cat's "+cats[0]+" is hurt."
print(sickness)
输出:
The cat's ear is hurt.
后续更新:
Python基础入门知识(3)
Python基础入门知识(4)
Python基础入门知识(5)
Python基础入门知识(6)
Python基础入门知识(2)相关推荐
- 超完整 Python基础入门知识教程
本书旨在帮助Python开发人员发现该语言和相关库的突出特性,并编写简单.流畅.易于阅读和易于维护的代码.特别是生成器.属性描述符(ORM的键)和Python表达式的对象在数据库处理过程中的具体应用: ...
- Python基础入门知识(11)
接前面的文章: Python基础入门教学 2 Python的基础知识 2.15 文件和异常 2.15.4 存储数据 2.15.4.1 使用json.dump()和json.load() 2.15.4. ...
- Python基础入门知识实例【基础算法】
基础知识很简单却非常重要,有兴趣的伙伴可以看我以前的两篇基础文章: Python基础知识汇总https://blog.csdn.net/weixin_41896770/article/details/ ...
- 【学习笔记】Python基础入门知识笔记,万字攻略带你走进Python编程
Python笔记,由此开始吧 本文是笔者在学习Python过程做的笔记总结,将简要讲述Python的基础知识,内容清晰易理解,相信你也能轻松的学会Python的入门基础知识内容.同时也希望这篇文章 ...
- Python基础入门知识
Python 编译环境的安装 首先安装Python的官方编译环境:Python3.7, 点击Add ... to Path . 点击下一步完成安装. 开始-> 运行 - > cmd -&g ...
- 学python需要什么基础知识-学习Python需要知道哪些基础入门知识?
众所周知,Python以优雅.简洁著称,入行门槛低,可以从事Linux运维.Python Web网站工程师.Python自动化测试.数据分析.人工智能等职位!就目前来看,Python就业前景广阔.很多 ...
- 全站最全面的Python 基础入门必备知识大全,学完即就业!【建议收藏仔细学习】
前言: Python作为21世纪最火的编程语言,市面上各种学习视频层出不穷,关于Python的学习氛围也逐渐浓厚!!最近一段时间越来越多的知友们在私信我,希望我出一期python基础入门的内容,肝了N ...
- 万字长文爆肝Python基础入门【巨详细,一学就会】
目录 数据的名字和种类--变量和类型 初探数据种类 数据类型 数值运算 比较运算 变量和赋值 变量的好处 用赋值更新变量 变量和数据类型的关系 总结 数据类型 数值运算 数值比较 变量和赋值 一串数据 ...
- python免费入门手册-Python 基础入门教程
Python是一种解释型.面向对象.动态数据类型的高级程序设计语言. Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年. <Python 基础入 ...
最新文章
- JS计算两个时间相差多久,相差年,月,日,小时,分钟
- 海伦公式c语言编程funcd,c语言编程练习题及答案_0.doc
- 前端学python有什么用-对于一个小白,前端和python哪个更适合?
- [转]C#遍历局域网的几种方法及比较
- 源码安装 odoo12 -- 问题记录
- bzoj2333[SCOI2011]棘手的操作
- maven依赖循环引用_shiro+spring boot+mybatis启动循环引用问题解决思路和方案
- leetcode1091. 二进制矩阵中的最短路径(bfs)
- java数组有顺序吗_java – 使用特定顺序对(数组)列表进行排序
- CentOS7安装.NET Core运行环境
- JAVA调用Web Service接口的五种方式
- 并查集(2)-按秩合并和路径压缩
- 5G+MEC+V2X车联网解决方案白皮书
- @click.prevent.native作用
- 2022国赛新大陆物联网Ubuntu系统维护(中职)
- Android警告信息:Insufficient image color contrast ratio
- C++常用的音频工具库
- 14.Yum详解,yum安装,查找,info,反向查找,组,依赖,缓存等所有操作
- 这3种PDF合并的方法你一定要收藏
- 华为 android 5.0系统下载地址,华为Mate8 EMUI5.0系统专用官方原版recovery下载和刷入...