python输入两个字符串、输出两个字符串集合的并集_python二:数据类型举例练习--小白博客...

时间:2025-01-30 07:18:43

一、#字符串

res = 'hello,world'

1、#字符串切片取值:*******

print(res[0:5])顾头不顾尾,取下标0-4的字符

print(res[0:-1:2]) 步长为2,也就是隔一个取一个

print(res[:-5])下标为-5(包括-5)往右的字符不要了

print(res[5:])下标为5(不包括5)往左的字符不要了

print(res[4]) 取字符串中下标为4的字符

2、#字符串格式化(%s和format)*****

result = 'my name is {name}, my age is {age}'.format(name='申晨林', age=25)

result1 = 'my name is {0}, my age is {1}'.format('申晨林',25)

result = 'my name is %s, my age is %s' % ('申晨林', 25)

result1 = 'my name is %s' % '申晨林'

3、#字符串替换*****

print(('l', 'sb', 2))#2为替换个数

4、#把列表变成字符串*******

s = ''.join(['a','b','c']) #前面的''中的内容会加在括号中每个元素的中间;例:s = 'd'.join(['a','b','c']) 则输出adbdc

5、#把字符串变成列表(以l分割点)*******

print(('l'))

6、#从右往左切,以.为分割,切3刀*******

res1 = '192.168.1.1'

print(('.', 3))

7、#统计字符串里某个字符的个数*******

print(('l'))

8、#查找字符串中某个元素中最靠左的下标*******#没有则报错

print(('o'))

9、#查找字符串中的字母下标,如果所查字母有多个,则查最后一个#没有则报错

print(('o'))

10、#strip去除首尾字符*******

res1 = '=====hello,world====='

print(('='))

注:只是以'='开头或者结尾的字符会被删除。

例:res1 = ' =====hello,world====='

print(('=')) 则输出“ =====hello,world”

#去除右边的字符

print(('='))

去除以'='结尾的字符

#去除左边的字符

print(('='))

去除以'='开头的字符

11、#判断字符串结尾的字母

print(('w')) #print()括号中加变量名字,一定不能加引号,否则会输出原内容;例:print('res') 则输出res

12、#判断字符串开头字符是否是(w)

print(('w'))

13、#encode转码,decode解码*******

res1 = '你好'

a = ('utf-8')

print(('utf-8')

14、#字符串拼接*******

res1 = 'my name is'

res2 = '申晨林'

print(res1+res2)

15、#小写字母边大写

print(())#转换大小写

print(())#小写变大写

16、#判断是否是抬头

print(())

17、#判断是否是小写

print(())

18、#判断是否是空格字符串,而不是判断字符串里是否有空格,是返回true,不是返回false

res1 = ' '

print(())

19、#find是查找字符串里的元素下标,如果没有返回-1

print(('qq'))

注:如果有多个相同元素,只显示第一个的下标

#列表

res = ['ab', 'bc', 'cd', 'd', 'aaa']

1、#index取列表中元素为d的下标*******

print(('d'))

2、#count统计列表中元素的个数*******

print(('ab'))

3、#insert在下标为2的位置插入sb*******

(2, 'sb')

print(res)

4、

'''

排序按照列表中元素字母排序,从a-z,如果首写字母一样,比较第二个,以此类推。。。

如果是数字,按照从小到大排序

'''

()

print(res)

5、#extend或者+代表把两个列表追加合并成一个列表*******

print(res + ['ss', 'vv', 'dd'])

(['ss', 'vv', 'dd'])

print(res)#输出 ['ab', 'bc', 'cd', 'd','aaa','ss', 'vv', 'dd']

注:('asd')

print(res)#输出 ['ab', 'bc', 'cd', 'd', 'aaa','a','s','d']

6、#pop括号里不输入数值默认从右往左取出,如果括号里输入数值,那么就把列表中下标为括号里的数值的元素取出来*******

print((3))

7、#clear清空列表中所有元素*******

()

print(res)

8、#remove就是删除元素*******

('aaa')

print(res)

9、#copy复制一个列表

a = ()

print(a)

10、#reverse反转

()

print(res)

11、#append追加一个元素*******

(['ssbb','aqe','ttt'])

print(res)

#字典

以key/value的形式存储数据,存取数据快,key是唯一的

info = {

'name': 'bs',

'high': 190,

'gender': 'man'

}

1、#popitem取出字典中最后的元素*******

(1)、()

print(info)   #除了最后的元素,都输出出来

(2)、print (()) #只输出最后一个元素

2、#pop取出字典中key为name的value

(1)、print(('name')) #输出name元素对应的value

(2)、('name')

print (info) #输出除去'name'元素以外的元素

3、#setdefault如果字典当中没有这对key/value那么就添加到字典当中,如果有,就不添加

('high','190')

print(info) #输出追加元素后的字典

print (('age',18)) #只输出追加元素的value “18”

4、#拷贝字典

res = ()

print(res)

5、#update把两个字典合并成一个,括号里的字典如果有相同的key将覆盖原字典*******

(info2)

print(info)

6、#items把字典当中key/value变成小元组形式,放在列表中*******

print(()) #输出dict_items([('name', 'bs'), ('high', 190), ('gender', 'man')])

7、#keys把字典当中所有的key打印出来*******

print(())

8、#values就是吧字典当中所有的value打印出来*******

print(())

9、#get取出相应key对应的value,如果get没有值,那么返回NONE,[]这种方法取值,没有值直接报错*******

print(('aaa'))

print(info['aaa'])

info['name'] = 'shuaige' #这种方式可以赋值

('name') = 'shuaige' #这种方式不能赋值

10、#fromkeys快速定义一个空字典******* #前面的{}必须为空才可以

res = {}.fromkeys(('name', 'age', 'high'), 'sss')

print(res)

#只能多个key对应一个value

11、替换字典中的value

info[key]='需要替换的value'

12、替换key

a = {"a":1}

#变成

a = {"b":1}

#方法

a["b"]=("a")

#集合

去重,不支持索引

set1 = {1,2,3,4,5}

set2 = {1,2,6,7,3,4,5}

set3 = {'a','v','t','w'}

1、#update合并2个集合

(set2)

print(set1)

2、#pop随机取值

print(())

3、#union:两个集合的并集

print((set2))

4、#remove删除集合中的元素

('t')

print(set3)

5、#discard删除集合中的指定元素

('w')

print(set3)

6、#add添加一个元素

('test')

print(set3)

7、#issubset set1是否是set2的子集

print((set2))

8、#issuperset set1是否是set2的父集

print((set1))

9、#intersection查看两个集合的交集

print((set2))

#内置函数

1、len:长度 #空格也有长度

s = 'hello,world'

print(len(s))

2、#in / not in

l1 = [1,2,3,4]

print(4 in l1) #4不可以加引号

print(4 not in l1)

info = {

'name':1,

'age':22

}

print('1' in info) #只能判断key是否在其中。value不可以

print(len(info)) #输出 2;每个键值对当作一个长度

set1 = {1,2,3,4} #此为集合

#布尔:

True False,True就是为真,False就是为假

#谨记

#0,None,空都为假,其余为真(空格都为真)

a = 0

if a:

print('ok')

else:

print('不ok')

#引用计数和垃圾回收机制

一个内存地址可以对应多个门牌号,一个门牌号只能对应一个内存地址

1.在程序结束后,变量所占用的内存回收

2.在门牌号全部摘除,变量所占用的内存回收

#1.可变类型:在id不变的情况下,value可以变,则称为可变类型,如列表,字典

#2. 不可变类型:value一旦改变,id也改变,则称为不可变类型(id变,意味着创建了新的内存空间)

#可变类型:

l1 = [1,2,3,4]

print(id(l1))

l1[2] = 99

print(id(l1))

info = {

'name': 'fengzi',

'age': 18

}

print(id(info))

info['name'] = 'shuaige' #这种方式可以赋值

print(id(info))

('name') = 'shuaige' #这种方式不能赋值

#不可变类型

a = 10000

print(id(a))

a = 20000

print(id(a))

s = 'aaaa'

print(id(s))

s = 'bbbb'

print(id(s))

数据类型练习题

info ={

'name':'john',

'age':'john',

'school':['清华大学','北京大学','复旦大学']

}

请取出值为清华的值

print(('school').pop(0)) #print命令可以进行继续筛选

print(('school')[0]) #切片也可以

把复旦大学修改成西安交通大学

info['school']=['清华大学','北京大学','西安交大']

print(info)

with open('','r',encoding='utf-8') as i:

for j in len('()'):

print(()[1])