前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python基础之公共方法

Python基础之公共方法

作者头像
py3study
发布2020-01-15 23:02:25
7430
发布2020-01-15 23:02:25
举报
文章被收录于专栏:python3python3python3

公共方法:就是列表,元组,字典,字符串能共同使用的方法;

Python内置函数

内置函数罗列

函数

描述

备注

len(item)

计算容器中的元素个数

del(item)

删除变量

del有两种方法

max(item)

返回容器中元素最大值

如果是字典,只针对key比较

min(item)

返回容器中元素最小值

如果是字典,只针对key比较

cmp(item1,item2)

比较两个值,-1小于/0等于/1大于

python3取消了cmp函数

注意:字符串具有以下规则:"0"<"A"<"a"

内置函数使用

len() 计算容器中元素的个数;

del 用关键字和函数两种方式,两种方式结果一样;del 变量;del(变量);

list = [1, 2,4]
del list[1]
list
[1, 4]
del(list[0])
list
[4]
del(list)
# 删除列表后,会报错,未定义

max和min函数

test_str = "qeqfeijovodmbahidkolmc"
max(test_str)
'v'
min(test_str)
'a'
# 如果是字典,只针对key比较
test_list = [3, 9, 0, 1]
max(test_list)
9
min(test_list)
tset_dict = {"a": "3", "b": "1", "c": "2"}
max(tset_dict)
'c'
min(tset_dict)
'a'

python3中取消了cmp比较运算符,但我们可以直接通过比较运算符<>进行比较; 数字可以比较,字符串可以比较,元组,列表可以比较大小,但字典不能比较大小

切片

  • 切片使用索引值来限定范围,从一个大的字符串中切出小的字符串;
  • 字符串,列表,元组可以进行切片,因为它们有序;但字典不能进行切片,因为字典无序;

切片示例如下:

t_list = [3,1,2,5,7]
t_list[0:3]
[3, 1, 2]
t_tuple = (1,2,3,4,5)
t_tuple[0:3]
(1, 2, 3)

运算符

运算符罗列

运算符

Python表达式

结果

描述

支持的数据类型

+

[1,2]+[3,4]

[1,2,3,4]

合并

字符串,列表,元组

*

["hi"]*4

["hi","hi","hi","hi"]

重复

字符串,列表,元组

in

3 in (1,2,3)

True

元素是否存在

字符串,列表,元组,字典

not in

4 not in(1,2,3)

True

元素是否不存在

字符串,列表,元组,字典

> >= == < <=

(1,2,3)<(2,2,3)

TRue

元素比较

字符串,列表,元组

  • in在对字典操作时,判断的是字典的键
  • in和not in被称为成员运算符

运算符的使用

*可以用于列表元组,但不能用于字典,因为字典的key必须是惟一的

[1,2]*5
[1, 2, 1, 2, 1, 2, 1, 2, 1, 2]
(1,2)*5
(1, 2, 1, 2, 1, 2, 1, 2, 1, 2)

+运算符表示合并,可以用于列表,元组,字符串合并;不同类型之间不能合并,比如元组与列表;

"hello" + "world"
'helloworld'
(1,2) + (3,4)
(1, 2, 3, 4)
[1,2] + [3,4]
[1, 2, 3, 4]

注意,当我们用+合并列表时,是生成一个新列表

append和extend方法的区别:extend会将一个指定的列表参数合并到列表中,即分散的加入;而append会将一个指定的列表当成一个整体的元素合并到列表中; 用append和extend是在原列表上扩展元素。

in和not in的使用

  • 包含和不包含;
  • 可以用于字符串,列表,元组,字典;但应注意在字典中,in只针对于字典的key做检查。

in和not in的使用如下:

"a" in "asdfg"
True
"a" not in "asdfg"
False
2 in (1,2,3,4)
True
2 not in [1,2,3,4]
False
"name" in {"name": "zhangsan"}
True
"zhangsan" in {"name": "zhangsan"}
False

完整的for循环

完整的for循环语法

for xx in 集合:
    xxx
else:
    xxx

这就是完整的for循环的语法结构;

  • 只要for循环不被break打断,else中的代码就会在for循环结束后执行;
  • 如果for循环被打断,就会直接执行for循环外部的后续代码

完整的for循环演示

students = [{"name": "韩信"}, {"name": "李白"}, {"name": "刘备"}]

for stu in students:
    print(stu)
else:
    print("我是for循环遍历结束后的else语句")
print("for循环结束了")

# {'name': '韩信'}
# {'name': '李白'}
# {'name': '刘备'}
# 我是for循环遍历结束后的else语句
# for循环结束了

break打断for循环演示

students = [{"name": "韩信"}, {"name": "李白"}, {"name": "刘备"}]

for stu in students:
    print(stu)
    if stu["name"] == "李白":
        print("李白,你妈妈喊你回家吃饭了")
        break
else:
    print("我是for循环遍历结束后的else语句")
print("for循环结束了")

# {'name': '韩信'}
# {'name': '李白'}
# 李白,你妈妈喊你回家吃饭了
# for循环结束了

for else的应用场景

  • 在迭代遍历嵌套的数据类型时,例如一个列表包含了多个字典

需求:需要判断某一个字典中 是否存在指定的值 如果存在,提示并且退出循环 如果不存在,在循环整体结束后,希望得到一个统一的提示

找到了的情况

students = [{"name": "韩信"}, {"name": "李白"}, {"name": "刘备"}]

find_stu = "李白"

for stu in students:
    print("正在查找...", stu["name"])
    if stu["name"] == find_stu:
        print("%s,你妈妈喊你回家吃饭了" % find_stu)
        break
else:
    print("不好意思,你家%s没在这个班" % find_stu)
print("for循环结束了")

# 正在查找... 韩信
# 正在查找... 李白
# 李白,你妈妈喊你回家吃饭了
# for循环结束了

没找到的情况

students = [{"name": "韩信"}, {"name": "李白"}, {"name": "刘备"}]

find_stu = "张飞"

for stu in students:
    print("正在查找...", stu["name"])
    if stu["name"] == find_stu:
        print("%s,你妈妈喊你回家吃饭了" % find_stu)
        break
else:
    print("不好意思,你家%s没在这个班" % find_stu)
print("for循环结束了")

# 正在查找... 韩信
# 正在查找... 李白
# 正在查找... 刘备
# 不好意思,你家张飞没在这个班
# for循环结束了
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-05-31 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Python内置函数
    • 内置函数罗列
      • 内置函数使用
      • 切片
      • 运算符
        • 运算符罗列
          • 运算符的使用
          • 完整的for循环
            • 完整的for循环语法
              • 完整的for循环演示
                • break打断for循环演示
                  • for else的应用场景
                  相关产品与服务
                  容器服务
                  腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档