Studing Day3 - python基础3

12.3

内容简介:1、列表、元组操作2、字符串操作3、字典操作4、集合操作5、文件操作6、字符编码与转码7、内置函数

一、列表、元组操作

列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储、修改等操作。

①创建一个列表

只要把逗号分隔的不同的数据项使用方括号括起来即可。代码如下

list1 = ['physics', 'chemistry', 1997, 2000];

list2 = [1, 2, 3, 4 ];

list3 = ["a", "b", "c", "d"];

②访问列表中的值

使用下标索引来访问列表中的值,同样你也可以使用方括号的形式截取字符,如下所示:

list1 = ['physics', 'chemistry', 1997, 2000];

list2 = [1, 2, 3, 4, 5, 6, 7 ];

print ("list1[0]: ", list1[0])

1)切片

print ("list2[1:5]: ", list2[1:5])

#起始位置包括,结束位置不包括(顾头不顾尾)

输出如下:

list1[0]:  physics

list2[1:5]: [2, 3, 4, 5]

取最后一个:print(list1[-1])

取最后两个值:print(list1[-3:])

2)修改

list[2]=”PE.”

③更新列表

你可以对列表的数据项进行修改或更新,你也可以使用extend()方法来添加列表项,可以用append()来添加一个对象到列表尾部,如下所示:

list.extend([1,2,3])

[1,2,1,2,3]      # 输出列表list

list.append([1,2,3])

[1,2,[1,2,3]]    # 输出列表

①  删除列表中的元素

del list[2]    #删除list中下标为三的元素

②  Python列表操作的函数和方法

列表操作包含以下函数:

1、cmp(list1, list2):比较两个列表的元素

2、len(list):列表元素个数

3、max(list):返回列表元素最大值

4、min(list):返回列表元素最小值

5、list(seq):将元组转换为列表

列表操作包含以下方法:

1、list.append(obj):在列表末尾添加新的对象

2、list.count(obj):统计某个元素在列表中出现的次数

3、list.extend(seq):在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)

4、list.index(obj):从列表中找出某个值第一个匹配项的索引位置

5、list.insert(index, obj):将对象插入列表,index是下标

6、list.pop(obj=list[-1]):移除列表中的一个元素(默认最后一个元素),并且返回该元素的值

7、list.remove(obj):移除列表中某个值的第一个匹配项

8、list.reverse():反向列表中元素

9、list.sort([func]):对原列表进行排序

 

二、字符串操作

特性:不可修改

name = "my name is hobby"

name2 = "my name is {name} and I am {year} years old!"

print(name)

print("首字母大写:" + name.capitalize())    # 首字符大写

print(name.endswith("y"))                 # 判断字符串是否以y结尾

print(name.expandtabs(tabsize=10))

print(name.find("name"))                  # 返回字符串的下标

print(name[name.find("name"):])           # 字符串也可以切片

print(name2.format(name='hobby', year=23))

print(name2.format_map({'name': 'hobby', 'year': '23'}))

print(name.isalnum())              # 判断是否是阿拉伯数字和英文字符

print(name.isalpha())              # 判断是否是纯英文字符

print('25'.isdecimal())            # 判断是否是十进制

print('1a'.isdigit())              # 判断是否是一个整数

print('a1a'.isidentifier())        # 判断是不是一个合法的标识符(变量名)

print('33A'.isspace())             # 判断是不是一个空格

print('My Name Is '.istitle())     # 判断是否是开头

print('My Name Is'.isupper())      # 判断是否是大写

print('' '+'.join(['1', '2', '3', '4']))

print(name.ljust(20, '*'))

print(name.rjust(20, '*'))

print(name.center(20, "*"))        # 打印30个字符,剩下不够的用*补充

print('Hobby'.lower())             # 把大写变小写

print('Hobby'.upper())             # 把小写变大写

print('\nHobby\n'.strip())         # 去掉两端换行

p = str.maketrans("abcdefy", '123456@')  # 用后面的123456代替adbcef

print("Hobby".translate(p))

print('Hobby'.replace('b', 'l', 1))   # 把b换成l,只换一个

print("Hobby".rfind('b'))             # 找到最右边的b的下标

print("Hobby,zg".split(','))          # 把字符串根据,分割

print("1+2\n+3+4".splitlines())       #

print("Hobby".swapcase())             # 把大写变小写,小写换大写

print("hobby li".title())             # 变成开头。

print("hobby".zfill(20))             # 自动填充0

 

三、字典操作

字典特性:①dict是无序的②key必须是唯一的

语法:

info = {

     ‘stu1101’:”hobby Li”,

     ‘stu1102’:”zhigu he”

}

name = "my name is hobby"

name2 = "my name is {name} and I am {year} years old!"

print(name)

print("首字母大写:" + name.capitalize())    # 首字符大写

print(name.endswith("y"))                 # 判断字符串是否以y结尾

print(name.expandtabs(tabsize=10))

print(name.find("name"))                  # 返回字符串的下标

print(name[name.find("name"):])           # 字符串也可以切片

print(name2.format(name='hobby', year=23))

print(name2.format_map({'name': 'hobby', 'year': '23'}))

print(name.isalnum())              # 判断是否是阿拉伯数字和英文字符

print(name.isalpha())              # 判断是否是纯英文字符

print('25'.isdecimal())            # 判断是否是十进制

print('1a'.isdigit())              # 判断是否是一个整数

print('a1a'.isidentifier())        # 判断是不是一个合法的标识符(变量名)

print('33A'.isspace())             # 判断是不是一个空格

print('My Name Is '.istitle())     # 判断是否是开头

print('My Name Is'.isupper())      # 判断是否是大写

print('' '+'.join(['1', '2', '3', '4']))

print(name.ljust(20, '*'))

print(name.rjust(20, '*'))

print(name.center(20, "*"))        # 打印30个字符,剩下不够的用*补充

print('Hobby'.lower())             # 把大写变小写

print('Hobby'.upper())             # 把小写变大写

print('\nHobby\n'.strip())         # 去掉两端换行

p = str.maketrans("abcdefy", '123456@')  # 用后面的123456代替adbcef

print("Hobby".translate(p))

print('Hobby'.replace('b', 'l', 1))   # 把b换成l,只换一个

print("Hobby".rfind('b'))             # 找到最右边的b的下标

print("Hobby,zg".split(','))          # 把字符串根据,分割

print("1+2\n+3+4".splitlines())       #

print("Hobby".swapcase())             # 把大写变小写,小写换大写

print("hobby li".title())             # 变成开头。

print("hobby".zfill(20))              # 自动填充0

print(info.setdefault('stu1108', '铃铛'))      # 字典里找stu1108键值,没有就新建,返回新建的value,有就返回stu1108的值

info.update(b)   # b是一个列表,若info和b中有相同的key,则info相同的key的value用b中对应的value代替,若没有,则添加b进info中

print(info.items())      # 把字典转化成列表

字典循环

info = {

    '01': 'jio',

    '02': 'alx'

}

for i in info:                 # 高效,用索引通过key就找出value

    print(i, info[i])

for k, v in info.items():      # 先把字典变成列表,没上面那个高效

print(k, v)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hobby云说

你的鼓励将是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值