Python培训
400-996-5531
在上节我们主要讲了数据类型,在本文我们就要学习对这些数据类型如何操作,学会运用才是真正的目的
number 类型
这个类型是不可以被改变的,一旦对变量进行赋值,number对象即被创建,在内存中将会被分配一块存储空间,有存储地址,当改变数字数据类型的值,将重新分配内存空间。
可以对数字类型进行 + - / *
在整数除法中,除法 / 总是返回一个浮点数,如果只想得到整数的结果,丢弃可能的分数部分,可以使用运算符 //
a = 1 b = 2 c = a+b print(a+b) print(c) x = 4 y = 10 print(x/y ,x//y) # 3 # 3 # 0.4 0
bool 在python3.x 之前 1 代表True 0 代表False
print(True+1) # 2
数字类型转换
int(x) 将x转换为一个整数。float(x) 将x转换到一个浮点数。complex(x) 将x转换到一个复数,实数部分为 x,虚数部分为 0。complex(x, y) 将 x 和 y 转换到一个复数,实数部分为 x,虚数部分为 y。x 和 y 是数字表达式。
m = 2.3 print(int(m)) # 2
string 字符串的操作
获取元素 通过索引去取相应位置的元素 下标从零开始 str = 'hello world' print(str[0]) # 输出第一个字符 print (str[0:-1]) # 输出第一个到倒数第二个的所有字符 print (str[:-1]) # 输出第一个到倒数第二个的所有字符 print (str[2:5]) # 输出从第三个开始到第五个的字符 print (str[3:]) # 输出从第四个开始的后的所有字符 print (str[-3:]) # 输出后三个字符 print (str * 2) # 输出字符串两次 print (str + "!") # 连接字符串 # h # hello worl # hello worl # llo # lo world # rld # hello worldhello world # hello world!
转义符 ---防止转义,可以在前面加入 r
print('aaa\nbbb') # aaa # bbb print(r'aaa\nbbb') # aaa\nbbb
常见字符串处理函数与用法
string.find('a',beg,end) 第一个参数为查找的字符 第二个参数为查找开始的位置, 第三个参数为结束的位置 (后两个都是下标 含头不含尾)
在一个较长字符串中查找子串。返回子串所在位置的最左端索引,如果没有找到则返回-1.如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果包含子字符串返回开始的索引值,否则返回-1。
栗子
str = 'hello world' print(str.find('o')) print(str.find('l',4)) # 4 # -1
str.replace(old, new[, max]) 把字符串中的 old(旧字符串) 替换成 ew(新字符串),如果指定第三个参数max,则替换不超过 max 次。
str = "this is string example....wow!!! this is really string" print(str.replace("is", "was")) print(str.replace("is", "was", 3)) # thwas was string example....wow!!! thwas was really string # thwas was string example....wow!!! thwas is really string
str.split(str="", num=string.count(str)) 对字符串进行分隔,返回分割后的字符串列表。
str – 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。
num – 分割次数
str = 'https://www.baidu.com/' print(str.split('.')) print(str.split('.',1)) # ['https://www', 'baidu', 'com/'] # ['https://www', 'baidu.com/']
str.strip() 字符串去空格及去指定字符
去两边空格:str.strip()
去左空格:str.lstrip()
去右空格:str.rstrip()
去两边字符串:str.strip('d'),相应的也有lstrip,rstrip
str = ' aaaddd ' print(str.strip()) print(str.lstrip()) print(str.rstrip()) # aaaddd # aaaddd # aaaddd
更多
# 求长度 len() # 字符串判断相关 # 是否以start开头:str.startswith('start') # 是否以end结尾:str.endswith('end') # 是否全为字母或数字:str.isalnum() # 是否全字母:str.isalpha() # 是否全数字:str.isdigit() # 是否全小写:str.islower() # 是否全大写:str.isupper()
注意:很多人会有疑问 不是字符串不能变么,为什么你这里又是替换,又是分隔,又是去空。。。其实我们并没有改变这个变量,你想向一个索引位置赋值,比如str[0] = 'a' 程序会报错。
List(列表) 常见函数操作
和字符串操作类似
list = [ 'abcd', 123 , 2.23, 'bbb', True] tinylist = [123, 'aaa'] # 看长度 print(len(list)) # 5 # 打印 切片含头不含尾 print (list) # 输出完整列表 print (list[0]) # 输出列表第一个元素 print (list[1:3]) # 从第二个开始输出到第三个元素 print (list[2:]) # 输出从第三个元素开始的所有元素 print (tinylist * 2) # 输出两次列表 print (list + tinylist) # 连接列表 print (list[0::2]) # 从第一个到最后一个字符,每隔2个输出一次 # ['abcd', 123, 2.23, 'bbb', True] # abcd # [123, 2.23] # [2.23, 'bbb', True] # [123, 'aaa', 123, 'aaa'] # ['abcd', 123, 2.23, 'bbb', True, 123, 'aaa'] # ['abcd', 2.23, True] #指定具体元素获取该元素在列表中的下标 a = list.index(123) #index的用法,有返回值 print(a) # 1
修改
a = [1, 2, 3, 4] a[3] = 9 print(a) # [1, 2, 3, 9] a[1:2] = [] # 将对应的元素值设置为 [] print(a) # [1, 3, 9] # 等号赋值,任意一个列表元素的变化,会影响到另一个列表。 b=a
注意:防止等号赋值这种变化可以使用一下方法
1. 列表的内置函数 a.copy() c=a.copy()
2. 序列类型函数 list(a)
3. 列表切片
添加 删除
# 添加 append() a = [1, 2, 3, 4] a.append('a') # append没有返回值 在列表后面追加 print(a) # [1, 2, 3, 4, 'a'] # 删除 pop() s = a.pop() #pop有返回值 弹出最后一位 并返回 print(s) print(a) # a # [1, 2, 3, 4] # remove('a') 移除列表中某个指定的元素,没有返回值,并且假如有多个相同值的元素存在,每次只会移除排在最前边的那个元素 a.remove(1) print(a) # [2, 3, 4] # extend没有返回值,把两个列表合成一个列表 m = [1, 2, 3, 4] = ['q','w','e','r'] m.extend(n) print(m) # [1, 2, 3, 4, 'q', 'w', 'e', 'r']
列表sort 排序 reverse 反转 和 sorted
a = [2, 5, 1, 8, 3] # 排序 sorted 有返回值不对原列表操作 sorted(a,b) 参数1 排序列表,参数2 规则 c = sorted(a) print(a) print(c) # [2, 5, 1, 8, 3] # [1, 2, 3, 5, 8] # 排序,sort 没有返回值 a.sort() print(a) # [1, 2, 3, 5, 8] # reverse 反转 a.reverse() print(a) # [8, 5, 3, 2, 1] # count(str) 是列表的内置方法,可以统计出相同值的元素在列表中总共出现都少次 print(a.count(1)) # 1
列表的成员关系,in 和 not in 返回bool值
a = [2, 5, 1, 8, 3] print(2 in a) # True
类型转换
a = ['h','e','l','l','o'] str = ''.join(a) # '' 中是指以什么连接 print(str) # hello
其他数据类型的操作还会在下文更新哦!
免责声明:内容和图片源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。
填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!
Copyright © 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有
Tedu.cn All Rights Reserved