1.python中有哪些数据类型?
python的数据类型:字符串(str),列表(list),字典(dict),元组(tuple),集合(set)
2.字符串用什么定义?告诉我你所知的字符串中有哪些函数一个函数一个中文解释?
字符串定义用:''或者“”
str1='baoan31ban'
# print(str1.capitalize()) #首字母大写
# print(str1.title()) #除首字母外的其他字符后的首字母也大写
# print(str1.istitle()) #判断序列中非字母隔开的字符是不是首字母大写,返回布尔值
# print(str1.count('a')) #统计序列中指定字符出现的次数
# print('?'.join(str1)) #在序列中的元素用问号拼接在一起
# print(str1.split('a')) #以指定的分隔符去分割序列元素,结果返回列表的数据类型
str2='abababbbhahhbbab'
print(str2.strip('ab')) #循环匹配删除以指定的字符开头或者结尾的元素,删除含有a和b
print(str2.lstrip('ab')) #循环匹配删除以指定的字符开头的元素,删除含有a和b
print(str2.rstrip('ab')) #循环匹配删除以指定的字符结尾的元素,删除含有a和b
print(str1.startswith('b')) #判断序列是否以指定的字符开头,返回布尔值
print(str1.endswith('n')) #判断序列是否以指定的字符结尾,返回布尔值
print(str1.find('a')) #从左往右查询第一个匹配到的指定字符对应的正向索引的值
print(str1.rfind('a')) #从右往左查询第一个匹配到的指定字符对应的正向索引的值
print(str1.replace('baoan','longgang')) #替换replace(‘旧值’,‘新值’)
print(str1.replace('b','k',1)) #替换replace(‘旧值’,‘新值’,替换次数)
str1='baoan31ban'
str2='BAOAN31BAN'
print(str1.upper()) #将所有的元素变大写
print(str2.lower()) #将所有的元素变小写
print(str2.isupper()) #判断序列中元素是否都是大写,输出布尔值
print(str1.islower()) #判断序列中元素是否都是小写,输出布尔值
print(str1.isalnum()) #判断序列中的元素是否都是数字或者字母或者数字与字母的组合,返回布尔值
print(str1.isalpha()) #判断序列中的元素是否是纯字母,返回布尔值
print(str1.isdigit()) #判断序列中的元素是否是纯数字,返回布尔值
3.列表用什么定义?告诉我你所知的列表中有哪些函数一个函数一个中文解释?
定义:用中括号表示[]
1.append 末尾添加
2.extend 列表拼接列表
3.insert(索引的值,‘内容’) 插入
4.remove 移除,删除
5.del 删除
6.pop 删除,可以返回被删除的元素
7.index 查看匹配到的第一个元素的索引
8.sort 实现列表升序排序(永久排序)从小到大排序(排序规则,数据类型不同不能一起排序)
9.sorted 排序从小到大(临时排序)
4.元组用什么定义?元组和列表有哪些区别?
定义:用小括号()表示 tuple
相同点:
1.都支持切片和索引的操作
2.相互之间可以转化
3.都是python中的一种数据类型,它的元素都可以是任何数据类型
不同点:
1.列表是可变序列(元素可以随意增删改),元组不可变序列(不可以随意增删改)
2.元组可以写保护功能,数据存储方面比较安全
3.如果元组的元素需要该表,需要将元组进行转化为列表,改变后再转化为元组
5.字典用什么定义?告诉我你所知的字典中有哪些函数一个函数一个中文解释?
定义:用大括号+键值对 直接定义{}
1.keys()函数,取出字典所有的键
2.values()函数 ,取出字典所有的值
3.setdefault()函数,往字典添加元素
4.del 删除,通过键删除
5.get()函数 通过传入键,得到对应的值====以键取值
6.items()函数 配合for循环,用两个变量分别遍历键和值
7.pop()函数==删除指定键,会返回对应值
8.popitem()函数 删除字典末尾的键值对,并以元组的数据类型返回
9.clear()函数 清空字典中的元素,剩下一个空字典
10.fromkeys()函数 ,生成一个新字典
11.__contains__()函数字典中有没有指定键,返回布尔值
12.update()函数 更新,用一个字段更新另一个字典
6.如何对字符串进行反向输出?
print(str1[::-1]) #打印结果为:gfedcba 切片反转,就是切完之后的元素位置进行颠倒
7.如何对列表进行反转输出?
list1=[1,5,3,7,8,4,9,19]
print(sorted(list1,reverse=True)) #实现降序排序 输出结果[19, 9, 8, 7, 5, 4, 3, 1]
8.字符串aabbcdbaaabcb,去除a或b开头的字符?
str1='aabbcdbaaabcb'
print(str1.lstrip('ab'))
答案
str1='aabbcdbaaabcb'
print(str1.lstrip('ab'))
9.用你熟悉的语言把字符串user_name输出为:userName
i='user_name'
print(i[:4]+i[5:].capitalize())
答案
str1='user_name'
print(str1[:4]+str1[5:].capitalize())
print(str1.replace('_n','N'))
10.实现把字符串str = "duoceshi"中任意字母变为大写(通过输入语句来实现)
str1='duoceshi'
i=input('输入你要变大的字母')
if i=='d':
print(str1.capitalize())
elif i=='u':
print(str1[:1]+str1[1:].capitalize())
elif i=='o':
print(str1[:2]+str1[2:].capitalize())
elif i=='c':
print(str1[:3] + str1[3:].capitalize())
elif i=='e':
print(str1[:4] + str1[4:].capitalize())
elif i == 's':
print(str1[:5] + str1[5:].capitalize())
elif i == 'h':
print(str1[:6] + str1[6:].capitalize())
elif i == 'i':
print(str1[:7] + str1[7:].capitalize())
else:
print('里面没有这个字母。你看清楚了')
答案
str1 = "duoceshi"
a=input('请输入在“duoceshi”中你需要输入的字母:')
if a in str1:
for i in a:
j=i.upper()
str1=str1.replace(i,j)
print(str1)
else:
print('输入错误!')
11.把字符串user_controller转换为驼峰命名UserController
str2='user_controller'
print(str2[:4].capitalize()+str2[5:].capitalize())
答案
str1='user_controller'
print(str1[:4].capitalize()+str1[5:].capitalize())
12.给一组无规律的数据从大到小或从小到大进行排序如:list = [2, 6, 9, 10, 18, 15, 1]
list1=[2,6,9,10,18,15,1]
list1.sort()
print(list1) #从小到大
print(list1[::-1]) #从大到小
print(sorted(list1))
print(sorted(list1,reverse=True))
答案
list1 = [2, 6, 9, 10, 18, 15, 1]
print(sorted(list1))
list1.sort()
print(list1)
13.请写一段Python代码实现删除一个list = [1, 3, 6, 9, 1, 8]# 里面的重复元素不能用set
list1=[1,3,6,9,1,8]
set1=set(list1)
print(set1)
list1=[1,3,6,9,1,8]
list1.remove(1)
print(list1)
list1=[1,3,6,9,1,8,3,3,3,3,3,3,3,3,3,22,2,2,2,1]
list2=[]
for i in list1: #用i变量去遍历整个列表元素
if i not in list2:
list2.append(i)
print(list2)
答案
list1 = [1,3,6,9,1,8,3,3,3,3,3,3,3,3,2,2,2,22,1]
list2=[]
for i in list1: #用i变量去遍历整个列表元素
if i not in list2: #判断list1中元素有没有在list2中,如果没有在list2中写入list2
list2.append(i)
print(list2)
14.将字符串类似:"k:1|k3:2|k2:9" 处理成key:value或json格式,比如{"k": "1", "k3": "2"}
str1='k:1|k3:2|k2:9'
str1=str1.split('|')
dict1={}
#print(str1)
for i in str1:
str2=i.split(':')
#print(str2)
dict1.setdefault(str2[0],str2[1])
print(dict1)
答案
str1='k:1|k3:2|k2:9'
str1=str1.split('|')
dict1={}
# print(str1) #['k:1', 'k3:2', 'k2:9']
for i in str1:
str2=i.split(':')
# print(str2)
dict1.setdefault(str2[0],str2[1])
print(dict1) #{'k': '1', 'k3': '2', 'k2': '9'}
15.输出1到100的奇数、偶数、5的倍数、奇数和、偶数和、总和
for i in range(1,101):
print(i)
i=1
j=2
x=5
y=1
a=1
b=2
c=2
w=1
z=1
while i<100:
print('奇数:%s' %i)
i=i+2
while j<=100:
print('偶数:%s' %j)
j+=2
while x<=100:
print('5的倍数:%s' %x)
x+=5
while y<99:
y=y+2
a=a+y
else:
print('奇数和:%s' %a)
while b<100:
b=b+2
c=c+b
else:
print('偶数和:%s' %c)
while w<100:
w+=1
z=z+w
else:
print('总和:%s' %z)
list1 = []
list2 = []
list3 = []
list4 = []
list5 = []
for i in range(1, 101):
if i % 2 == 0:
list1.append(i)
else:
list2.append(i)
if i % 5 == 0:
list3.append(i)
print('1到100的偶数有:', list1, '\n偶数和为:', sum(list1))
print('1到100的奇数有:', list2, '\n奇数和为:', sum(list2))
print('5的倍数有:', list3, '\n总和:', sum(list1) + sum(list2))
答案
sum1=0
sum2=0
for i in range(1,101):
if i%2==0:
# sum1=sum1+i
sum1+=i
else:
sum2+=i
print(sum1,sum2,sum1+sum2)
16.有如下url地址, 要求实现截取出"?"号后面的参数,
并将参数以"key value"的键值形式保存起来, 并最终通过#get(key)的方式取出对应的value值。
url地址如下:
http://ip:port/extername/get_account_trade_record.json?page_size=20&page_index=1&user_id=203317&trade_type=0
str1='http://ip:port/extername/get_account_trade_record.json?page_size=20&page_index=1&user_id=203317&trade_type=0'
dict1={}
str2=str1.split('?')[1]
# print(str2)
list1=str2.split('&')
print(list1)
for i in list1:
list2=i.split('=')
print(list2)
dict1.setdefault(list2[0],list2[1])
#print(dict1)
答案
str1='http://ip:port/extername/get_account_trade_record.json?page_size=20&page_index=1&user_id=203317&trade_type=0'
dict1={}
str2=str1.split('?')[1]
# print(str2)
list1=str2.split('&')
# print(list1)
for i in list1:
list2=i.split('=')
# print(list2)
dict1.setdefault(list2[0],list2[1])
print(dict1)