接前面的文章:
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)相关推荐

  1. 超完整 Python基础入门知识教程

    本书旨在帮助Python开发人员发现该语言和相关库的突出特性,并编写简单.流畅.易于阅读和易于维护的代码.特别是生成器.属性描述符(ORM的键)和Python表达式的对象在数据库处理过程中的具体应用: ...

  2. Python基础入门知识(11)

    接前面的文章: Python基础入门教学 2 Python的基础知识 2.15 文件和异常 2.15.4 存储数据 2.15.4.1 使用json.dump()和json.load() 2.15.4. ...

  3. Python基础入门知识实例【基础算法】

    基础知识很简单却非常重要,有兴趣的伙伴可以看我以前的两篇基础文章: Python基础知识汇总https://blog.csdn.net/weixin_41896770/article/details/ ...

  4. 【学习笔记】Python基础入门知识笔记,万字攻略带你走进Python编程

    ​ Python笔记,由此开始吧 本文是笔者在学习Python过程做的笔记总结,将简要讲述Python的基础知识,内容清晰易理解,相信你也能轻松的学会Python的入门基础知识内容.同时也希望这篇文章 ...

  5. Python基础入门知识

    Python 编译环境的安装 首先安装Python的官方编译环境:Python3.7, 点击Add ... to Path . 点击下一步完成安装. 开始-> 运行 - > cmd -&g ...

  6. 学python需要什么基础知识-学习Python需要知道哪些基础入门知识?

    众所周知,Python以优雅.简洁著称,入行门槛低,可以从事Linux运维.Python Web网站工程师.Python自动化测试.数据分析.人工智能等职位!就目前来看,Python就业前景广阔.很多 ...

  7. 全站最全面的Python 基础入门必备知识大全,学完即就业!【建议收藏仔细学习】

    前言: Python作为21世纪最火的编程语言,市面上各种学习视频层出不穷,关于Python的学习氛围也逐渐浓厚!!最近一段时间越来越多的知友们在私信我,希望我出一期python基础入门的内容,肝了N ...

  8. 万字长文爆肝Python基础入门【巨详细,一学就会】

    目录 数据的名字和种类--变量和类型 初探数据种类 数据类型 数值运算 比较运算 变量和赋值 变量的好处 用赋值更新变量 变量和数据类型的关系 总结 数据类型 数值运算 数值比较 变量和赋值 一串数据 ...

  9. python免费入门手册-Python 基础入门教程

    Python是一种解释型.面向对象.动态数据类型的高级程序设计语言. Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年. <Python 基础入 ...

最新文章

  1. JS计算两个时间相差多久,相差年,月,日,小时,分钟
  2. 海伦公式c语言编程funcd,c语言编程练习题及答案_0.doc
  3. 前端学python有什么用-对于一个小白,前端和python哪个更适合?
  4. [转]C#遍历局域网的几种方法及比较
  5. 源码安装 odoo12 -- 问题记录
  6. bzoj2333[SCOI2011]棘手的操作
  7. maven依赖循环引用_shiro+spring boot+mybatis启动循环引用问题解决思路和方案
  8. leetcode1091. 二进制矩阵中的最短路径(bfs)
  9. java数组有顺序吗_java – 使用特定顺序对(数组)列表进行排序
  10. CentOS7安装.NET Core运行环境
  11. JAVA调用Web Service接口的五种方式
  12. 并查集(2)-按秩合并和路径压缩
  13. 5G+MEC+V2X车联网解决方案白皮书
  14. @click.prevent.native作用
  15. 2022国赛新大陆物联网Ubuntu系统维护(中职)
  16. Android警告信息:Insufficient image color contrast ratio
  17. C++常用的音频工具库
  18. 14.Yum详解,yum安装,查找,info,反向查找,组,依赖,缓存等所有操作
  19. 这3种PDF合并的方法你一定要收藏
  20. 华为 android 5.0系统下载地址,华为Mate8 EMUI5.0系统专用官方原版recovery下载和刷入...

热门文章

  1. table表格表头单元格添加斜线
  2. PS油画特效插件AKVIS Artwork for mac
  3. 怎么制作位置分布图,怎么画网点分布图
  4. 原装世嘉土星手柄(Sega Saturn)转USB小板,软硬件全开源
  5. L1-049 天梯赛座位分配
  6. 2011 imac 固态_iMac (27 英寸, 2011 年中) - 技术规格
  7. 抛物线交点式公式_初一年级二次函数公式:顶点式、交点式、两根式
  8. 区块链中的“双花”问题
  9. web自动化测试-第四讲: 三种时间等待
  10. 个人理财管理系统代码