思维导图版Python3入门与进阶(一)基本数据类型

前言

    自己也是在摸打滚爬中在慢慢的学习python3这门语言,之前是java开发,到后来转向python的学习,因为python语言对于数据处理方面还是异常强大。学习语言,自己的心得还是要多实践,最好是先打好基础,然后自己尝试着拿来使用,变成自己的东西才是最重要的。话不多说,这个专题会把自己学习python3的笔记和心得分享给大家。与大家共勉。


Python的基本数据类型


进制与进制类型转化

进制

进制10,2,8,16的表示:

0b  二进制  0b10
0o  八进制
0x  十六进制


注:是零而不是O


进制转换

转换成2进制:

bin(10)  
bin(0o)
bin(0x)


转换成10进制

int()


转换成16进制

hex()


转换成8进制

oct(0b111)



Number

Number 数字有4个子类型:

1.    整数:int         //对比其他变成语言:short int long

2.    浮点数:float   //对比其他语言      :单精度(float)、双精度(double == )

 

可以使用type()函数来查看类型

type(1)            #整型
type(-1)           #整型


type(2/2) == float  #除法运算
type(2//2) == int   #整除运算

注:除法运算过程中一定要注意上面的示例,不然会导致类型出错

 

3.    布尔类型: bool  :(True False)

4.    复数: complex

 

bool特殊栗子详解:

int(True)     
int(False)

 注:bool是数字类型的一种


bool(1)
bool(0)

注:因为是数字类型的一种,所以它规则是,非0表示真,0表示假

 

但是其实字符串也可以表示真假

bool('abc')           #True
bool('')              #False

规则:非空为True, 空为False

 

除了字符串,下面这些也可以表示真假

[1, 2, 3]        #True
[]               #False


{1, 2, 3}     True
{}               False

 注:规则为非空为True , None 为空 False

 

复数的表示:

36j  #复数


字符串

字符串类型为str

type('hello')  #str

如何表示 :有单引号,双引号,三引号几种方式

'hello'
"hello"
'''
hello
'''

怎样判断要使用哪种方式:

1.    如果要输入单引号时 可以使用双引号    

"let's go"

2.    或者单引号之间可以夹杂双引号

'he says "hello" !'

3.    或者可以直接使用转义字符 

'let\'t go'

三引号:建议每行字符79个

'''
可以多行输入
多行
多行
'''

注意下面这个栗子:

输入一个格式,在显示的时候会表示这些格式\t \n等  

 

使用print(''' ''')会执行字符串的转义字符


 注:这是IDLE的一些特性,注意区分''' '''输出的不同


如果想在IDLE中实现换行操作: 

hello\
world

注: 单引号和双引号的换行可以通过这样的机制进行,这样的好处是避免代码太长不便阅读


转义字符

定义:特殊的字符

        1)无法看到的字符    #回车 换行 制表符

        2)语法冲突的符号

 

表示方式:

\t            #制表符
\n           #换行
 \'           # ' 
\r           #回车 

注意:\r回车 \n换行  不是同一个概念

 

一种特殊的格式:

print(r' ')

注:r'包含的字符串' 不是一个普通字符串,而是一个原始字符串


看到了吧,原始字符串可以使转义字符失效

r R 都可以表示原始字符串

注:r'let't go '  是不可以的,因为里面包含的就不是一个字符串(中间被断开了)


字符串的合并和剔除操作

字符串的运算

1.    合并和重复运算

"hello "+"world"

"hello" * 3

2.    取字符运算

"hello world"[0]

"hello world"[4]    //序号
"hello world"[-1]   //从末尾往前数,取倒数第一个

3.    取字符串片段

"hello world"[0:4]      #取前四个字符
"hello world"[0:5]      #到要截取的位置的下一个位置,即取前五个字符

注: 序号从0开始



从后到截取n个字符

步长 "hello world"[0:-1]


 

[6:] 截取到末尾

[:-4] 截取掉后4个

[-4:0] 取后4个元素


list列表

概念

用来表示组的概念

[1,2,3,4,5,6]

列表[1,2,3,4,5,6] ,是list类型

注:其中的数字可以替换成各种类型,甚至还可以嵌套列表

[1,2,[1,2,3,4],4,5,6]

访问列表中的某个元素
["","","",""][0]

["","","",""][1]

["","","",""][0:2]    //取出的也是一个列表

["","","",""][-1:]

注:类似字符串操作


列表的操作

列表合并使用 +

列表*3 数字重复3次

没有减法操作

[[],[],[],[]] 分组


tuple元组

定义:表示组概念的元组


 表示:

(1,2,3,4,5)

也可以存放不同的元素,类似List


对元组的操作:

(1,2,3,4,5)[0]

(1,2,3,4,5)[0:2]

(1,2,3) + (4,5,6)

(1,2,3)*3


和int str list一样,元组也有自己的标识:

tuple #元组

type((1,2,3))

特殊栗子:

type((1))          #int
type(('hello'))    #str

注:这样表示元组的话,可能会与()运算进行冲突


所以为了解决冲突,()硬性规定为运算

规定:(1,) 表示一个元素的元组

          () 表示一个空的元组

 

list不存在这样的问题,如

type([1])  #是一个list


序列

序列:也称为组

str list tuple 都是序列

因为它们有共有的操作

'hello'[2]
[1,2,3,4][2]
(1,2,3,4)[2]

注:原因是每个元素都会分配一个序号和顺序

 

因此它们还有一些共有的操作:

切片 [0:3]
       [-1:]
       [0:8:2]
加    + 
乘    *


一些基本的操作 

1. 判断元素是否在序列中

3 in [1,2,3,4,5,6]   #是一个bool类型的
3 not in [1,2,3,4,5,6]

2.判断序列的长度

len([1,2,3,4,5,6])

3.返回最大值、最小值

max([1,2,3,4,5,6])
min()    

注:字符串间也有大小的操作


查看字符编码:

ord('d')
ord(' ')


集合 set

特点:无序

表示:{元素, 元素}

type({1,2,3,4,5,6})


基本操作:

len()
1 in {1,2,3,4,5,6}
1 not in {1,2,3,4,5,6}

差集

#剔除元素的操作   可以使用减法的操作

{1,2,3,4,5,6} - {1,2,3}



交集

{1,2,3,4,5,6} & {3,4}



并集

{1,2,3,4,5,6} | {3,4,7}

 


特殊栗子

type({})  #dict

注:因为空dict的表示方法也是{}, 所以为了避免冲突有了下面的定义

set()  #定义空的集合
type(set())    #set

字典 dict

定义:类似生活中的字典,用key:value对的方式存储

 

表示:

{key1:value1,key2:value2...}

注:也是无序的,不是序列

 

访问方式:

{key1:value1,key2:value2...}['key']


需要注意的要点:

1.    字典里是不能有重复的key的,因为会被后面的覆盖掉

2.    字典的键(key)不一定只能有str,也能有int

       int 和 str是不一样的key

3.    value没有类型限制

       但是key不可以是任意类型,必须是不可变的类型


所以列表不可以作为key,元组是可以的


空的字典可以直接使用{}表示

type({})    #dict


总结python3基本数据类型

要点:

1.    str和元组是不可变,属于不可变类型

2.    数字(number) 类型包含: int float bool complex(复数)

3.    组  序列list 集合set 字典dict

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

桥路丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值