python基本数据类型及对象方法

string                                                     

1.strip

str_test=' Larry '

v=str_test.strip()
print(v)
v=str_test.lstrip()
print(v)
v=str_test.rstrip()
print(v)

2. index
print(str_test[2])

3.slice
print(str_test[2:5])

4.concat
a='123a'
print(str_test+a)

5.upper lower isupper islower

v=str_test.upper()
print(v)
v=str_test.lower()
print(v)

v=str_test.casefold()
print(v)

v=str_test.islower()
print(v)
v=str_test.isupper()
print(v)

6.startswith endswith

str_test='larry'
v=str_test.startswith('la')
print(v)
v=str_test.endswith('ry')
print(v)

7.capitalize
v=str_test.capitalize()
print(v)

8.count

v=str_test.count('r')
print(v)

9.center expandtabs

v=str_test.center(20,'*')
print(v)

*******larrr********

str_test = 'larr\tY\tqwe\nsad\tzxc\tlarr'
v=str_test.expandtabs(20)
print(v)

larr Y    qwe
sad zxc  larr

10. 找到指定子序列的索引位置:不存在返回-1

# name = 'alex'
# v = name.find('o')
# print(v)
# v = name.index('o')  #不存在直接报错
# print(v)

v=str_test.find('r',5,8)
print(v)

11.字符串格式化

str_test = '姓名:%s,年龄:%d'
v=str_test%('男',20)
print(v)

str_test = '姓名:{0},年龄:{1}'
v=str_test.format('男',19)
print(v)

str_test = '姓名:{name},年龄:{age}'
v=str_test.format(name='男',age=19)
print(v)

str_test = '姓名:{name},年龄:{age}'
v=str_test.format_map({'name':'男','age':19})
print(v)

 

# 12. 是否是数字、汉子.
name = 'alex8汉子'
v = name.isalnum() # 字,数字
print(v) # True
v2 = name.isalpha()#
print(v2)# False

# 13. 判断是否是数字
num = '②'
v1 = num.isdecimal() # '123'
v2 = num.isdigit() # '123','②'
v3 = num.isnumeric() # '123','二','②'

# 14.是否包含隐含的xx
name = " asd\b"
v = name.isprintable()
print(v)


# 15.是否全部是空格
name = ' '
v = name.isspace()
print(v)

# 16.元素拼接(元素字符串) *****
name = 'alex'

v = "_".join(name) # 内部循环每个元素
print(v)

name_list = ['海峰','杠娘','李杰','李泉']
v = "搞".join(name_list)
print(v)

# 17. 左右填充
#center,rjust,ljust
name = 'alex'
v = name.rjust(20,'*')
print(v)
v = name.ljust(20,'*')
print(v)

 

#18 给定模式翻译

str_test='larry'
m=str.maketrans('lar','312')
v=str_test.translate(m)
print(v)

 

# 19. 分割,保留分割的元素
content = "李泉SB刘康SB刘一"
v = content.partition('SB') # partition
print(v)

# 20. 替换
content = "李泉SB刘康SB刘浩SB刘一"
v = content.replace('SB','Love')
print(v)
v = content.replace('SB','Love',1)
print(v)

# 21,移除空白,\n,\t,自定义
name = 'alex\t'
v = name.strip() # 空白,\n,\t
print(v)

# 22. 大小写转换
name = "Alex"
v = name.swapcase()
print(v)

# 23. 填充0
name = "alex"
v = name.zfill(20)
print(v)

# 24.字符串拼接

v1 = 'alex'
v2 = 'eric'
v = v1 + v2 # 执行v1的__add__功能
print(v)

# 25.字符转码 --数据存取或网络传输

name='汉字'
v=name.split('r')
print(v)

v=name.encode(encoding='utf-8')
print(v)

v=name.encode(encoding='gbk')
print(v)

 

int                                                                        

# 1. 当前整数的二进制表示,最少位数
age = 25 # 100
print(age.bit_length())

# 2. 获取当前数据的字节表示
age = 15
v = age.to_bytes(10,byteorder='big')
print(v)
v = age.to_bytes(10,byteorder='little')
print(v)

 

list                                                                        

user_list = ['李泉','刘一','刘康','豆豆','小龙'] # 可变类型
# PS:
# name = 'alex'
# 执行功能;
# 1.追加
user_list = ['李泉','刘一','刘康','豆豆','小龙'] # 可变类型
user_list.append('刘铭')
print(user_list)
# 2. 清空
user_list = ['李泉','刘一','刘康','豆豆','小龙'] # 可变类型
user_list.clear()
print(user_list)

# 3. 拷贝(浅拷贝)
user_list = ['李泉','刘一','刘康','豆豆','小龙'] # 可变类型
v = user_list.copy()
print(v)
print(user_list)

# 4. 计数
user_list = ['李泉','刘一','李泉','刘康','豆豆','小龙'] # 可变类型
v = user_list.count('李泉')
print(v)

# 5. 扩展原列表
user_list = ['李泉','刘一','李泉','刘康','豆豆','小龙'] # 可变类型
user_list.extend(['郭少龙','郭少霞'])
print(user_list)

# 6. 查找元素索引,没有报错
user_list = ['李泉','刘一','李泉','刘康','豆豆','小龙'] # 可变类型
v = user_list.index('李海')
print(v)

# 7. 删除并且获取元素 - 索引
user_list = ['李泉','刘一','李泉','刘康','豆豆','小龙'] # 可变类型
v = user_list.pop(1)
print(v)
print(user_list)

 

# 8. 删除 - 值
user_list = ['李泉','刘一','李泉','刘康','豆豆','小龙'] # 可变类型
user_list.remove('刘一')
print(user_list)

del user_list[1]

print(user_list)

# 9. 翻转
user_list = ['李泉','刘一','李泉','刘康','豆豆','小龙'] # 可变类型
user_list.reverse()
print(user_list)

# 10. 排序: 欠参数
nums = [11,22,3,3,9,88]
print(nums)
# 排序,从小到大
nums.sort()
print(nums)
# 从大到小
nums.sort(reverse=True)
print(nums)

range enumerate                                                

for i in range(10,0,-1):

    print(i)

for i in range(0,len(user_list)):

  print(i+1,user_list[i])

# enumerate额外生成一列有序的数字
li = ['eric','alex','tony']
for i,ele in enumerate(li,1):
print(i,ele)

v = input('请输入商品序号:')
v = int(v)
item = li[v-1]
print(item)

tuple                                                                   

元组类似于列表,但除了元组中包含的可变类型的元素可以被修改,其他元素是不能修改的

其对象的方法也类似于列表,最后一个元素后加逗号

user_tuple = ('alex','eric','seven',['陈涛','刘浩','赵芬芬'],'alex')
user_tuple[0] = 123      # 不能被修改
user_tuple[3] = [11,22,33] #不能被修改
user_tuple[3][1] = '刘一'  #可以被修改
print(user_tuple)

dict                                                                     

# 1. 清空、
dic = {'k1':'v1','k2':'v2'}
dic.clear()
print(dic)

# 2. 浅拷贝
dic = {'k1':'v1','k2':'v2'}
v = dic.copy()
print(v)

# 3. 根据key获取指定的value;不存在不报错
dic = {'k1':'v1','k2':'v2'}
v = dic.get('k1111',1111)   # 如果字典存在该key,value,则返回该key对应的value,否则返回该表达式中的第二个参数,如例返回1111
print(dic)
print(v)
v = dic['k1111']   #字典不存在改元素,返回错误
print(v)

# 4. 删除并获取对应的value(值)
dic = {'k1':'v1','k2':'v2'}
v = dic.pop('k1')
print(dic)
print(v)  # 值

# 5. 随机删除键值对,并获取到删除的(键值)
dic = {'k1':'v1','k2':'v2'}
v = dic.popitem()
print(dic)
print(v)  # 键值

k,v = dic.popitem() # ('k2', 'v2')
print(dic)
print(k,v) # 不同变量获取键值

v = dic.popitem() # ('k2', 'v2')
print(dic)
print(v[0],v[1]) # 不同变量获取键值

# 6. 增加,如果存在则不做操作
dic = {'k1':'v1','k2':'v2'}
dic.setdefault('k3','v3')
print(dic)
dic.setdefault('k1','1111111')
print(dic)
# 7. 批量增加或修改
dic = {'k1':'v1','k2':'v2'}
dic.update({'k3':'v3','k1':'v24'})
print(dic)

dic = dict.fromkeys(['k1','k2','k3'],123)
print(dic)
dic = dict.fromkeys(['k1','k2','k3'],123)
dic['k1'] = 'asdfjasldkf'
print(dic)

有点蒙这儿

dic = dict.fromkeys(['k1','k2','k3'],[1,])
{
'k1': 123123213, # [1,2]
'k2': 123123213, # [1,]
'k3': 123123213, # [1,]
}
dic['k1'].append(222)
print(dic)

set                                                                    

 

集合的遍历,交集、并集、补集、差集

集合具有无序性、确定性

#1.遍历

s1 = {"alex",'eric','tony','李泉','李泉11'}
s2 = {"alex",'eric','tony','刘一'}

for item in s1:
print(item)

#2. 差集

v=s1.difference(s2)
print(v)

 

# 3.差集赋值

s1.difference_update(s2)
print(s1)
print(s2)

 # 4.交集的补集

# 3.s2中存在,s1中不存在

# s1中存在,s2中不存在
v = s1.symmetric_difference(s2)
print(v)

 


# 5. 交集
v = s1.intersection(s2)
print(v)

 


# 6. 并集
v = s1.union(s2)
print(v)

 

# 7. 移除
s1 = {"alex",'eric','tony','李泉','李泉11'}
s1.discard('alex')
print(s1)

# 8.添加去重  -- 元素本身不能重复

s1 = {"alex",'eric','tony','李泉','李泉11'}
s1.update({'alex','123123','fff'})
print(s1)

 

posted @ 2017-05-09 18:09  geek_ace  阅读(634)  评论(0编辑  收藏  举报