授课内容:
基本数据类型的操作:数字的操作,字符串的操作,布尔数据的操作,判断数据的类型
重点:
二 、字符串的处理操作
(1)把一个字符串句子存储为字符串列表s.split()
s = "I like British very much"
s1 = s.split(" ")
['I', 'like', 'British', 'very', 'much']
type(s1)
list
(2)把一格字符串左边的空格删除,把一格字符串右边的空格删除,把一格字符串两边的空格删除s.strip()、s.lstrip()、s.rstrip()
s = " USA British English "
s1 = s.strip(" ")
s2 = s.lstrip(" ")
s3 = s.rstrip(" ")
s1
'USA British English'
s2
'USA British English '
s3
' USA British English'
(3)数某些字母的个数 例如“an”在字符串“sadhfjl an sdiedhan adskj”中出现了多少次,s.count('apple'),数出字符串s中有多少个‘apple’单词。如何数出列表中重复的单词
s = 'apple is a fruit , apple music'
print(s.count('apple'))
运行结果:
2
(4)字符转换成unicode码 ,ord()函数 ,比如‘l’转化成它对应的unicode码(一个数字),
print(ord('特'))
print(ord('斯'))
print(ord('拉'))
运行结果
29305
26031
25289
(5)Unicode码,电脑可以认识的码,转化为字符chr,用chr()函数,
print(chr(666))
print(chr(777))
print(chr(888))
运行结果
ʚ
̉
(6)将字符串聚合,比如 ‘abcde’和['a','b','c','d','e'.'f'],一般是字符串才可以聚合
【1】
e = "12345"
r = '*'.join(e)
r
运行结果:
'1*2*3*4*5'
【2】
r = 12345
e = '@'.join(r)
print(e)
运行结果:
TypeError Traceback (most recent call last)
in
1 r = 12345
----> 2 e = '@'.join(r)
3 print(e)
TypeError: can only join an iterable
【3】
e = 'abcdef'
w = '*'.join(e)
w
运行结果:
'a*b*c*d*e*f'
(7)字符串替换 s.replace("python",'py'):将字符串s中的字符python替换为py
s = 'Python is a good langguage'
s1 = s.replace('Python','py')
print(s1)
py is a good langguage
print(s)
Python is a good langguage
(8)使字符串字母全部变成小写,使字符串全部变成大写,首字母大写用s.title()函数
s = 'QweQwr'
s1 = s.lower()
s2 = s.upper()
print(s1,s2)
qweqwr QWEQWR
三、布尔数据操作
(1)all() 函数,any()函数
all()函数,所有元素非0,答案才是非0的;
any()函数,有一个元素非0,答案就是非0的
s =all([True,True,False,True])
r =any([False,False,False,True,False])
print(s)
print(r)
False
True
(2)如何作为掩码
import numpy as np
r = np.array([[11,22,33,44]])
print(r>22)
运行结果:
[[False False True True]]
代码
r[r>22]
运行结果:
array([33, 44])
四、类型判别和类型转换
(1)判断某个变量是不是某个类的函数 isinstance()
s = 123
r = 'abc'
print(isinstance(r,int))
print(isinstance(r,object))
print(isinstance(s,int))
运行结果:
False
True
True
(2)字符串的检测方法,是否只有数字,是否只有字母,是否只有数字字母.答案是True,False
s.isdigit()
s.isalpha()
s,isalnum()
(3)类型转换str()、int()、float()、eval()
实验表明只有字符串数字可以用这些函数
(1)这一章主要介绍了一些函数的用法,可以概括为四大类,分别是处理数字的函数、处理字符串的函数、处理布尔类型的函数、判断变量类型和转换变量类型的函数;
(2)处理字符串的函数有:将一句话(字符串)按照空格区分开变成单词存储在列表中s.split(“ ”)函数;除去一个字符串左边、右边、左边右边的字符串函数lstrip(),rstrip(),strip()函数;判断子集是否在全集里的函数if ‘an’ in ‘adsd an falfjan dhahankd’函数;数出一个字符串中某个子集的个数函数s.count('XX');将一个字符串s中的某个字符‘python’全部换成‘py’的函数s.replace(“python”,“py”);将所有的字母大写、所有的字母小写、首字母大写s.upper()、s.lower()、s.title().;判断某个字符串是否全部为字母,全部为数字、全部为数字和字母s.isalpha(),s.isdigist(),s.alnum()函数;判断某个变量是否是类的一个实例isinstance(s,int)
处理布尔数据的函数:any(【X1,X2,X3,X4】)有一个正确则最后答案正确,all(【X1,X2,X3,X4】)所有元素正确则最后答案正确;某数组X,X > 22,那么X[ X > 22 ]会得到一个新的数组,数组里的元素全都大于22 ;