剑勇传说,江苏大学选课,情挑首席总裁
在 python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型。
创建字符串类型
v = '123' a = '''456''' b = """1111100""" print(type(v),type(a),type(b))#<class 'str'> <class 'str'> <class 'str'>
字符串类型内置函数
字符串字母转换
upper大写转换
v = 'afcd' a = v.upper() print(v) #afcd print(a) #afcd
lower转换小写
v = 'adsss' a = v.lower() print(a) #adsss
字符串判断
isdigit判断是否为数字
#示例1 v = '1' if v.isdigit(): print(v) else: print('不是数字') #示例2,打印字符串中的数字 v ='asdr124r6das656' for i in v : if i.isdigit(): print(i) #示例3,打印字符串中数字出现个数 v ='asdr124r6das656' totle = 0 for i in v : if i.isdigit(): totle +=1 print(totle) #7 #示例4,打印字符串中数字的总和 v ='asdr124r6das656' totle = 0 for i in v : if i.isdigit(): totle +=int(i) #这涉及强制类型转换最后写 print(totle) #30
startswith以什么开头
v ='asdr124r6das656' if v.startswith('as'): print('以as开头') #以as开头
endswith以什么结尾
v ='asdr124r6das656' if v.endswith('6'): print('以6结尾') #以6结尾
字符串去空格
无法去中间的空格
strip去两边的空格
v = ' 123aa ' print(v) # 123aa # a = v.strip() print(a) #123aa#
lstrip去左边的空格
v = ' 123aa ' print(v) # 123aa # a = v.lstrip() print(a) #123aa #
rstri去右边的空格
v = ' 123aa ' print(v) # 123aa # a = v.rstrip() print(a) # 123aa#
字符串替换
replace替换
#示例1 v = 'asdasddasgfedtgy21354esdasdfasd' a = v.replace('da','h') #把da全部替换成h print(a) #示例2 v = 'asdasddasgfedtgy21354esdasdfasd' a = v.replace('da','h',1) #指定替换次数为1次 print(a)
字符串分割
split分割
#示例1以a为分隔符分割 v = 'asdasddasgfedtgy21354esdasdfasd' a = v.split('a') print(a) #['', 'sd', 'sdd', 'sgfedtgy21354esd', 'sdf', 'sd'] #示例2以a为分隔符分割2次 v = 'asdasddasgfedtgy21354esdasdfasd' a = v.split('a',2) print(a) #['', 'sd', 'sddasgfedtgy21354esdasdfasd'] #示例3从右往左分割2次 v = 'asdasddasgfedtgy21354esdasdfasd' a = v.rsplit('a',2) print(a) #['asdasddasgfedtgy21354esd', 'sdf', 'sd']
字符串格式化
%占位符
s字符串
print('我是%s'%('sun',))
d数字
print('我是%s,今年%d'%('sun',20,))
%转义
print('我是%s,今年%d,智商%%100'%('sun',20,))
format字符串索引位置插入字符
顺序插入
print('我是{},几年{},智商{}'.format('玉行','26','%100'))
关键字插入
print('我是{name},几年{age},智商{bfb}'.format(bfb='%100',name='玉行',age='26'))
join字符串拼接
v = 'abc' b = '_'.join(v) print(b)
编码解码
encode转换编码
v = '男孩' b = v.encode('utf-8') print(b) #b'\xe7\x94\xb7\xe5\xad\xa9'
decond解码
v = '男孩' b = v.encode('utf-8') print(b) a = b.decode('utf-8') print(a) #男孩
创建整型
v = 12 print(type(v)) #<class 'int'>
python2与python3区别
python2
32位系统:-2147483648~2147483647
64位系统:-9223372036854775808~9223372036854775807
超出范围自动转成long(长整形)
整数除法只能保留整数位
想要显示小数位添加下面模块
from __future__ import division
python3
创建列表
#创建空列表 v = [] print(type(v)) #<class 'list'> #创建数值列表 v = [11,22,'ssd','234s'] print(type(v))
列表类型内置函数
添加元素
append添加一个元素到列表的最后
#示例一 v = [11,22,'ssd','234s'] v.append('1112') print(v) #示例二 v = [] while true: user_name = input('请输入用户名:') if user_name != 'n': v.append(user_name) else: break print(v) ''' 请输入用户名:sun 请输入用户名:123 请输入用户名:ssdgfgh 请输入用户名:2wrtttg 请输入用户名:n ['sun', '123', 'ssdgfgh', '2wrtttg'] '''
insert按照索引位置添加元素
v = ['sun', '123', 'ssdgfgh', '2wrtttg'] v.insert(2,'hang') print(v) #['sun', '123', 'hang', 'ssdgfgh', '2wrtttg']
删除
修改原有值
remove根据元素删除
v = ['sun', '123', 'ssdgfgh', '2wrtttg'] v.remove('123') print(v) #['sun', 'ssdgfgh', '2wrtttg']
pop根据索引为止删除
#示例一删除指定位置元素 v = ['sun', '123', 'ssdgfgh', '2wrtttg'] v.pop(2) print(v) #['sun', '123', '2wrtttg'] #示例二删除最后元素(默认) v = ['sun', '123', 'ssdgfgh', '2wrtttg'] v.pop() print(v) #['sun', '123', 'ssdgfgh'] #示例三提取删除元素的值 v = ['sun', '123', 'ssdgfgh', '2wrtttg'] a = v.pop() print('被删除元素:',a) #被删除元素: 2wrtttg print('删除后列表:',v) #print('删除后列表:',v)
del根据列表索引删除
#指定元素位置删除 v = ['sun', '123', 'ssdgfgh', '2wrtttg'] del v[1] print(v) #['sun', 'ssdgfgh', '2wrtttg'] #删除整个列表 v = ['sun', '123', 'ssdgfgh', '2wrtttg'] del v print(v)
排序
reverse列表反转打印
v = ['sun', '123', 'ssdgfgh', '2wrtttg'] v.reverse() print(v) #['2wrtttg', 'ssdgfgh', '123', 'sun']
sort排序
#从小到大 v = ['sun', '123', 'ssdgfgh', '2wrtttg'] v.sort(reverse=false) print(v) #['123', '2wrtttg', 'ssdgfgh', 'sun'] #从大到小 v = ['sun', '123', 'ssdgfgh', '2wrtttg'] v.sort(reverse=true) print(v) #['sun', 'ssdgfgh', '2wrtttg', '123']
嵌套
v = ['sun', '123',[11,22,33],(11,22,33), 'ssdgfgh', '孙'] print(v[2]) print(v[2][2]) v[2] = 11 print(v) #下面代码执行报错 ''' v[3][2] = 11 print(v) ''' #正确的代码 v[3] = 11 print(v)
创建元组
#创建空元组 v = () print(type(v)) #<class 'tuple'>
元组嵌套
如果元组中的元素是可变类型,那么这个元素内部的值可以修改
''' v = (11,22,[1,2,3],44) v[2] = 0 print(v) #代码会报错,因为整个列表是元组的元素,元组中的元素不能被修改 ''' v = (11,22,[1,2,3],44) v[2][2] = 0 print(v) #(11, 22, [1, 2, 0], 44)
无序列表,3.6之后变为有序列表
创建字典
v = {'k1':'v1',} print(type(v)) #<class 'dict'> #info = {键:值,键:值,键:值,键:值,键:值,}
字典取值
#获取单个值 info = {'k1':'v1','k2':'v2','k3':'v3','k4':'v4',} print(info['k3']) #v3
字典类型内置函数
keys获取字典中所有的键
info = {'k1':'v1','k2':'v2','k3':'v3','k4':'v4',} for i in info.keys(): print(i) #k1 k2 k3 k4
values获取字典中所有的键
info = {'k1':'v1','k2':'v2','k3':'v3','k4':'v4',} for i in info.values(): print(i) #v1 v2 v3 v4
以列表返回可遍历的(键, 值) 元组数组
info = {'k1':'v1','k2':'v2','k3':'v3','k4':'v4',} for i,a in info.items(): print(i,a)
无序列表,值不重复
集合类型内置函数
添加
add在集合末尾添加
v = {'aaa','bbb',111,333} v.add('345') print(v) #{'aaa','bbb',111,333,'345'}
批量更新
v = {'aaa','bbb',111,333} v.update({'cvb','ni'}) print(v) #{'ni', 'aaa', 'bbb', 'cvb', 333, 111}
删除
discard按照元素删除
v = {'aaa','bbb',111,333} v.discard(111) print(v) #{'aaa','bbb',333}
求集运算
intersection交集
生成x&y中都有的值创建集合赋值给变量
v = {'11',2,'sw','22'} a = v.intersection({1,2,'sw'}) print(a) #{2,'sw'}
union并集
把两个集合的合成一起,把重复的去除,然后生成一个集合
v = {'11',2,'sw','22'} a = v.union({1,2,'sw'}) print(a) #{'22', '11', 2, 1, 'sw'}
difference差集
把y中存在的x中也存在的值删除,剩余的值生成新的集合
v = {'11',2,'sw','22'} a = v.difference({1,2,'sw'}) print(a) #{'11', '22'}
symmetric_difference对称差集
把x中存在的y中不能存在的和y中存在的x中不存在的值,生成新的集合
v = {'11',2,'sw','22'} a = v.symmetric_difference({1,2,'sw'}) print(a) #{1, '11', '22'}
len计算长度
字符串
v = 'sdfgggg' print(len(v)) #7
列表
v = ['1',2,4,'aaaa'] print(len(v)) #4
元组
v = ('1',2,4,'aaaa') print(len(v)) #4
字典
v = {'k1':'v1','k2':'v2'} print(len(v)) #2
集合
v = {'k1',1,3,'sss'} print(len(v)) #4
索引
字符串
str1 ='12dasdasdas' print(str1[2]) #d
列表
v = ['1',2,4,'aaaa'] print(v[2]) #4 v[2] = '66' print(v) #['1', 2, '66', 'aaaa']
元组
v = (1,'2','222','asd') print(v[1]) #2
字典
v = {'k1':'v1','k2':'v2','k3':'v3','k4':'v4',} print(v['k1']) #v1 v['k3'] = 666 print(v) #{'k1': 'v1', 'k2': 'v2', 'k3': 666, 'k4': 'v4'}
切片
取前不去后
字符串
str1 ='12dasdasdas' print(str1[2:4]) #da
列表
str1 = ['1',2,4,'aaaa','22222'] print(str1[2:4]) #[4, 'aaaa']
元组
str1 = (1,2,4,'aaaa','22222') print(str1[2:4]) #(4, 'aaaa')
步长
字符串
#示例一从第二个字符开始第10个字符结束步长为2 v = 'dsafdgerhfgdhasas' print(v[2:10:2]) #示例二反向打印 v = 'dsafdgerhfgdhasas' print(v[::-1])
列表
#示例一 v = [11,2,3,45,'aaa'] print(v[1:4:2]) #[2, 45] #示例二反向打印 v = [11,2,3,45,'aaa'] print(v[::-1]) #['aaa', 45, 3, 2, 11]
元组
#示例1 v = (1,2,3,'111111',333,2222,5555) print(v[1:5:2]) # (2, '111111') #反向打印 v = (1,2,3,'111111',333,2222,5555) print(v[::-1]) #(5555, 2222, 333, '111111', 3, 2, 1)
整型
-5~256
v = -5 a = -5 print(id(v),id(a))#8791372584416 8791372584416
v = 2571 b = v print(id(v),id(b)) #34949616 34949616
字符串
查看内存地址
==比较值是否相等
is比较内存地址是否相等
可变数据类型(指的是内部元素)
不可变数据类型
字符串
v = 23 a = str(v) print(type(a)) #<class 'str'>
整型
v = '2345' a = int(v) print(a,type(a)) #2345 <class 'int'>
布尔值
v = 0 a = bool(v) print(a) #false
列表
v = 'sdsdwqed' a = list(v) print(a) #['s', 'd', 's', 'd', 'w', 'q', 'e', 'd']
元组
v = [11,22,33,'asdasd'] a = tuple(v) print(a) #(11, 22, 33, 'asdasd')
集合
v = [11,22,33,33,'aaaa'] a = set(v) print(a) #{33, 11, 'aaaa', 22}
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
python求numpy中array按列非零元素的平均值案例
网友评论