学习 pyhton 语言首先需要掌握它的基本规则,还有它支持什么数据类型,下面画一张图来了解它支持的数据类型有哪些?
上面这几个数据类型在工作中经常使用,下面不分先后介绍每一种数据类型基本使用。
一、字符串
第一,字符串基础
对于它的定义就不在这里说明,下面介绍 python
中字符串常见的几种表达式:
Python 3.8.6 (v3.8.6:db455296be, Sep 23 2020, 13:31:39)
[Clang 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> str1='I am studying performance test'
>>> str2="7Dgroup是一个性能实战交流平台"
>>> str3='''菩提本无树,明镜亦非台,本来无一物,何处惹尘埃'''
我们怎么知道上面类型是什么呢?可以通过 python
中内置方法为 type
来查看当前的类型是什么?
>>> type(str1)
<class 'str'>
>>> type(str2)
<class 'str'>
>>> type(str3)
<class 'str'>
>>>
大家都知道 python 是一行代码解决问题,既然是一行代码解决问题那么 python 内部就的给我们提供很多可以使用的方法,还的帮我们实现繁琐的处理逻辑,只有这样才能做到一行代码解决问题,我们怎么看内置方法呢?大家可以打开终端输入命令 dir
操作如下:
目前我们也知道怎么定义,也知道怎么看内置方法接下来就的实验一把,在实验之前想了解下 python 怎么打印的,光有输入没有输出也不行呀,pyhon 中最常见输出函数就是 print
>>> print(str1)
I am studying performance test
>>> print(str2)
7Dgroup是一个性能实战交流平台
>>> print(str3)
菩提本无树,明镜亦非台,本来无一物,何处惹尘埃
>>>
这里还介绍几种常见输出方法:
>>> print("%s"%str1)
I'm learning
>>>
>>> print('{}'.format(str1))
I'm learning
>>>
格式化输出有很多方法,掌握规律后再看看文档就明白怎么写成自己想要的样子。
第二,字符串基本操作
对于操作来说无非是 增、删、改、查 下面就一一演示怎么操作字符串的增删改查。
对于字符串添加来说直接拼接就行:
>>> results= str1+'- -我 相加啦--'+str2
>>>
>>> results
'I am studying performance test--我们相加啦--7Dgroup是一个性能实战交流平台'
>>>
如果使用内置函数拼接的话可以采用 join
来拼接,注意 join
表示每个元素按照规定格式链接起来:
>>> str1 = 'my name test'
>>> "*".join(str1)
'm*y* *n*a*m*e* *t*e*s*t'
>>>
大家在学其他语言知道坐标是可以操作元素的,对于字符串也支持坐标操作,但是这边字符串是不能通过坐标赋值的,字符串的坐标是从零开始。
>>>
>>> str1 = 'my name test'
>>> str1[0]
'm'
>>> str1[1]
'y'
>>> str1[1]='我是最棒的'
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'str' object does not support item assignment
>>>
对于删除来说直接的办法就是重新赋值,还有替换里面值就可以,话说四通八达到达目标就行。
>>> str1
'my name test'
>>> str1="I'm learning" #重新赋值
#替换
>>> str1.replace('learning','Reading a book')
"I'm Reading a book"
假如想看下字符长度应该怎么看呢?在python中很简单一个命令就可以看到:
>>> len(str1)
12
>>>
>>> str1
"I'm learning"
>>>
大家是不是感觉操作很方便而且效率高,对于字符串有很多操作可以学习的,这里暂时不一一演示,会在后续课程中综合学习字符内置方法怎么使用。
解决一个问题通常需要不同知识点组合才能解决,所以还得继续学习下面的列表数据类型。
二、列表
第一,列表基础
还是从增删改查学习列表的操作,学习之前还得先知道怎么定义列表,才能对列表进行增删改查,对于 pyhon 来说定义列表最简单,直接用中括号定义如:
>>> a=[] #定义空列表
>>> type(a) # 查看类型
<class 'list'>
上面定义空列表,大家还记得怎么看列表支持哪些函数吗?不记得可以复习下上面的内容,这里还是通过 dir 命令就看到目前支持哪些函数操作,
>>> dir(a)
['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']
>>>
在操作之前先了解一个概念就是:列表是动态的数据类型,可以理解列表就是一个容器,可以放不同类型数据,长度大小是随数据动态变化。
学习第一个函数append
它是追加在列表之后,如:
>>> a.append(1)
>>> a.append(2)
>>> a.append("性能测试")
>>> a.append("我是最棒的")
>>> a
[1, 2, '性能测试', '我是最棒的']
>>>
如果我们想添加第一个呢?中间呢?或者任何一个位置呢?这是时候我们需要请出insert
函数,它可以满足我们这些要求,如:
>>> a.insert(0,1111)
>>> a
[1111, 1, 2, '性能测试', '我是最棒的']
>>> a.insert(4,1111)
>>> a
[1111, 1, 2, '性能测试', 1111, '我是最棒的']
>>> a.insert(len(a),1111)
>>> a.insert(len(a),12323)
>>> a
[1111, 1, 2, '性能测试', 1111, '我是最棒的', 1111, 12323]
说明:insert 它有两个参数分别是
- 第一个参数是插入的位置
- 第二个参数是插入的值是什么
它同样支持索引操作,不同的是它可以通过索引来改变值。
>>> b=[1,2,3,4,5,6,76,78,89]
>>> b
[1, 2, 3, 4, 5, 6, 76, 78, 89]
>>> b[1]
2
>>> b[2]='修改呢'
>>> b
[1, 2, '修改呢', 4, 5, 6, 76, 78, 89]
>>>
在这暂时学一个相当好用的操作技能就是切片。
注意:它的表达式 :object[start_index:end_index:step]
start_index
: 表示起始索引(包含该索引对应值)
end_index
:表示终止索引(不包含该索引对应值)
step
: 正负数均可 我们通常叫它 步长
接下来一起感受下它的魅力
>>> a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a[1::] # 从1开始到最后
[1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a[::-1] #倒叙排序
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
>>> a[3:5] #从3开始到5结束
[3, 4]
>>> a[1::2] #从1开始,步长为2
[1, 3, 5, 7, 9]
>>>
上面是最简单的操作,只要多练习几次就掌握。
大家是否记得一个比较常见的题目就是回文判断。如果让你用目前的知识点判断是否是回文是否有思路?
百度百科:回文 是指正读反读都能读通的句子,它是古今中外都有的一种修辞方式和文字游戏,如“我为人人,人人为我”等。在数学中也有这样一类数字有这样的特征,成为回文数。
# 思路为:
>>> a=[123321]
>>> a[::-1]==a
True
>>>
如果想统计日志中一个字段出现多少次数可以采用count函数来统计,对于count来说字符串与列表都支持它的操作,下面想掌握基本使用,后期通过实际案例说明。
>>> a='I am learning Python'
>>>
>>> a.count('n')
3
>>> b=[1,3,4,5,4,56,6,56,7,1,1,21,2]
>>> b.count(a)
0
>>> b.count(1)
3
>>>
如果想删除列表前后元素或者其他元素应该怎么操作呢?我们可以先看下它内置方法,之后就明白怎么操作呢?如果想排序又怎么办呢?
>>> b
[1, 3, 4, 5, 4, 56, 6, 56, 7, 1, 1, 21, 2]
>>> b.pop() #删除最后一个
2
>>> b
[1, 3, 4, 5, 4, 56, 6, 56, 7, 1, 1, 21]
>>> b.remove(1) #删除指定元素
>>> b
[3, 4, 5, 4, 56, 6, 56, 7, 1, 1, 21]
>>>
>>> b.reverse() #反转
>>> b
[21, 1, 1, 7, 56, 6, 56, 4, 5, 4, 3]
>>> b.sort() #排序
>>> b
[1, 1, 3, 4, 4, 5, 6, 7, 21, 56, 56]
>>>
了解这些基础知识后就能对一个列操作,还能结合实际工作能做一些数据处理相关工作。
总结:
上面内容很简单,只要重复练习几次就掌握了。
回顾下这节课主要讲解了字符串、列表的创建与常见的操作、还有怎么查看字符串、列表支持哪些函数,函数基本使用方法,上面只是列举一小部分,还有很多方法没列举出来,自己可以按思路操作操作就能掌握。
珍视自己,一天一天、一瞬间一瞬间,极度认真地过好,你的人生即刻就会呈现灿烂的景象。