1.列表补充

  • extend()

    li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]
    s = "qwert"
    li.extend(s)
    print(li)

    将s中的每个元素添加到列表中去

    # 1.有列表 users = ["李忠伟", "堂开发"]
    #           people = ["李鹏", "张思达"]
    users.extend(people) # users中增加
    people.extend(users)# people中增加
    # 2.有列表 users = ["李忠伟", "堂开发"]
    #       元组 people = ("李鹏", "张思达")
    users.extend(people) # users中增加
    people.extend(users) # 只有列表中有extend功能,元组中是没有的。报错
  • pop和del的区别

    li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]
    del li[1]     # 仅仅是删除
    deleted = li.pop(1)       # 在列表中删除,并将删除的此数据赋值给前面的变量
  • del删除 可以使用切片删除一个范围内的元素

    • li[1:8]
  • range()用法补充

    • 从前往后range(0, len, 1) 不取len

    • 从后往前range(len, 0, -1) 不取0,要想取0,range(len, -1, -1)

      range(0, 10, 1)     ---> [0, 1, 2..., 9]
      range(9, -1, -1)    --->[9, 8, 7..., 0]
  • join的用法

    • 不仅可以作用于字符串,也可以作用于列表和元组
  • 面试题

    • 注意点:元组内部必须加逗号
    """
    16.面试题
    v1 = 1      ---> int
    v2 = (1)    ---> int
    v3 = (1,)   --->tuple
    print(type(v1), type(v2), type(v3))
    """
    # data = [(1), (2), (3)]  # 相当于[1, 2, 3]

2.数据类型总结和补充

  • int

    • py2/py3
    • 除法
    • 强制转换:
      • int('字符串') 【重要】
      • int(布尔值)
  • bool

    • 强制转换:

      • bool(整数) -> bool(1)/.. -> bool(0)

      • bool(字符串) -> bool('xx') --> bool("")

      • bool(列表) -> bool([]) --> bool([])

      • bool(元组) -> bool(()) --> bool(空元组)

        v1 = bool(0)
        v2 = bool("")
        v3 = bool([])
        v4 = bool(())
        print(v1,v2,v3,v4) # False
  • str

    • 独有功能:upper/lower/split/strip/replace/isdigit/startswith/endswith/format/join/encode
    • 公共公共:
      • len
      • 索引
      • 切片
      • 步长
      • for循环
      • 删除【无】
      • 更新【无】
    • 强制转换:
      • str(999) # "999"
      • str(True) # "True"
      • str(["唐开发",'李忠伟']) # "["唐开发",'李忠伟']" --> v2 = "".join(["唐开发",'李忠伟'])
      • str(["唐开发",'李忠伟'])
  • list

    • 独有功能:append/insert/pop/remove/clear/ extend

    • 公共功能:

      • len
      • 索引
      • 切片
      • 步长
      • for循环
      • 删除
      • 更新
    • 强制转换:

      • list("asdfadfasfdadfasfd")

        v1 = list("asdfadfasfdadfasfd")
        print(v1)
      • list( (11,22,33,44,) )

        v1 = list( (11,22,33,44,) )
        print(v1)
  • tuple

    • 独有功能【无】

    • 公共功能:

      • len
      • 索引
      • 切片
      • 步长
      • for循环
      • 删除【无】
      • 更新【无】
    • 强制转换:

      • tuple('adfadfasdfasdfasdfafd')

        v1 = tuple('adfadfasdfasdfasdfafd')
        print(v1)
      • tuple([11,22,33,44])

        v1 = tuple([11,22,33,44])
        print(v1)
  • 总结

    • 常见的类型转换

      # 字符串转数字
      
      # 数字转字符串
      
      # 列表转元组
      
      # 元组转列表
      
      # 其他转bool时,只有:0 “”  []  () 
      # 练习题
      nums = [11,22,33,44]
      for i in range(0,len(nums)):
          nums[i] = str(nums[i])
      resutl = '_'.join(nums)
      print(resutl)
      
      # 1. "".jon([元素必须是字符串,元素必须是字符串,])

3.字典

帮助用户去表示一个事物的信息(事物是有多个属性)。

info = {"name":'刘伟达','age':18,'gender':'男','hobby':'同桌'} # 键值

# 请输出:我今天点%s,他的年龄是%s,性别是%s,他喜欢他的%s;

基本格式

data = {键:值,键:值,键:值,键:值,键:值,键:值,}
# 练习题
userinfo = {'usenrame':'alex','password':"oldboy"}

user = input('请输入用户:')
pwd = input('请输入密码:')

if userinfo['username'] == user and userinfo['password'] == pwd:
    print('登陆成功')
else:
    print('用户名或密码错误')

  1. 独有功能

    info = {"name":'刘伟达','age':18,'gender':'男','hobby':'同桌'}
    • keys,获取字典中所有的键。 ['name','age','gender','hobby']

      # for item in info.keys():
      #     print(item)
    • values,获取字典中所有的值。 ['刘伟达','18','男','同桌']

      # for item in info.values():
      #     print(item)
    • items,获取字典中的所有键值对。

      # for v1,v2 in info.items():
      #     print(v1,v2)
      info.items() # 得到的是一个键值对元组,因此可以用v1, v2 in (元组)分别取出其中的值并赋值

额外注意点:

  • a, b = [1, 2]   #可以是列表和元组
    print(a, b)
  1. 公共功能

    • len

      info = {"name":'刘伟达','age':18,'gender':'男','hobby':'同桌'}
      print(len(info))
    • 索引

      info = {"name":'刘伟达','age':18,'gender':'男','hobby':'同桌'}
      info['name']
      info['age']
    • 切片【无】

    • 步长【无】

    • for

      info = {"name":'刘伟达','age':18,'gender':'男','hobby':'同桌'}
      
      for item in info.keys():
          print(item)
      
      for item in info.values():
          print(item)
      
      for k,v in info.items():
          print(k,v)
    • 修改(存在就修改/不存在就增加)

      # 改值
      info = {"name":'刘伟达','age':18,'gender':'男','hobby':'同桌'}
      info['age'] = 19
      print(info)
      
      # 改键
      # 删除后再增加
      del info['hobby']
      info['xxxxx'] = 'x1'
    • 删除

      info = {"name":'刘伟达','age':18,'gender':'男','hobby':'同桌'}
      
      del info['name']
      print(info)
      

系统学习python第五天学习笔记的更多相关文章

  1. Python学习---Python下[元组]的学习

    元组是不可变的, 用小括号()定义,而且一旦定义 ,不可变[类型是tuple] [元组看做一个整体,不可拆分,不可赋值,但可以全部重新赋值] 通过圆括号,用逗号分隔,常用在使语句或用户定义的函数能够安 ...

  2. 【Python】Java程序员学习Python(五)— 函数的定义和使用

    不想做一个待宰的羔羊!!!!要自己变得强大.... 函数的定义和使用放在最前边还是有原因的,现在语言趋于通用,基本类型基本都是那些,重点还是学习对象的使用方法,而最根本的还是方法的使用,因此优先介绍, ...

  3. 学习Python不得不关注和学习的国外大神博客

    注意 : 本文收集于网路 . 由于常常更新 , 有些链接打不开, 请自备梯子 在学习Python过程中,总会遇到各种各样的坑, 虽然Python是一门优美而简单易学的语言 . 但当学习后 , 总想着更 ...

  4. 系统学习python第三天学习笔记

    day02补充 运算符补充 in value = "我是中国人" # 判断'中国'是否在value所代指的字符串中. "中国"是否是value所代指的字符串的子 ...

  5. 系统学习python第七天学习笔记

    1.get方法用法补充 info = {'name':'王刚蛋','hobby':'铁锤'} while True: data = input('请输入:') val = info.get(data, ...

  6. 系统学习python第四天学习笔记

    1.解释 / 编译补充 编译型:代码写完后,编译器将其变成成另外一个文件,然后交给计算机执行. 解释型:写完代码交给解释器,解释器会从上到下一行行代码执行:边解释边执行. [实时翻译] 2.字符串功能 ...

  7. Python 第五阶段 学习记录之---Django 基础

    Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Session等诸多功能. ...

  8. Python 第五阶段 学习记录之---Django 进阶

    Model 一.创建表 1.基本结构 字段 AutoField(Field) - int自增列,必须填入参数 primary_key=True BigAutoField(AutoField) - bi ...

  9. Python 第五阶段 学习记录之--- Web框架

    什么是web服务器的原理是什么 Web框架本质 众所周知,对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端. #!/usr/bin/env pyt ...

随机推荐

  1. 01-JAVA语言基础——课后动手动脑

    1.一个java类文件中真的只能有一个公有类吗? 请使用Eclipse或javac检测一下以下代码,有错吗? public class Test{    public static void main ...

  2. 001、JAVA开发环境安装与eclipse软件第一印象

    折腾了快1个星期,一直没有成功装好JAVA环境,eclipse一直打不开,java环境配置的问题真是不得不吐槽一下,太烂了.今天反反复复折腾好久,终于搞定了.用的金山毒霸,方法如下: 一.打开金山毒霸 ...

  3. 八十五、SAP中的ALV创建之四,去掉主键背景色

    一.我们执行程序之后,发现表格中所有的内容都是有底色的 二.这个是因为我们在代码中规定了主键 三.我们去掉处理第一个之外的主键 四.运行程序,发现还是所有字段都有背景色 五.这是因为在每次ls_fie ...

  4. 160-PHP 文本替换函数str_replace(一)

    <?php $str='Hello world!'; //定义源字符串 $search='o'; //定义将被替换的字符 $replace='O'; //定义替换的字符串 $res=str_re ...

  5. 第一个flink application

    导入maven依赖 需要注意的是,如果使用scala写程序,导入的依赖跟java是不一样的 Maven Dependencies You can add the following dependenc ...

  6. codeforces 594

    D 给你一个长度为n的括号序列,然后你可以选择交换两个位置,你需要使得能够变成 合法括号序列的起点最多. 题解 人尽皆知的东西:合法的括号序列是,令'('为1,')'为-1,那么前缀和需要>=0 ...

  7. 13 装备的添加和移除(Unity3D)

    本案例主要实现功能如下:1.创建UI界面,包含两个装备栏,四个武器选择栏以及显示人物的属性的文本框2.每一个装备都有自己的属性(AD/AP/AR/MP)3.人物也有自己的基础属性(AD/AP/AR/M ...

  8. ROS2学习日志:TurtleSim测试日志(基于ROS2 Eloquent Elusor)

    TurtleSim测试日志(基于ROS2 Eloquent Elusor) 1.ros2 run 1.1 ros2 run turtlesim turtlesim_node --ros-args -- ...

  9. Struts1 的配置文件总结

    一.在web.xml中安装Struts 要想使用Struts,我们接触到的第一个配置文件就是web.xml.实际上,Struts的入口点是一个名为ActionServlet的Servlet.在第一次访 ...

  10. 在开发过程中遇到的Oracle的坑及开发技巧

    本人与2018年毕业,工作一年多,仍是菜鸟,自毕业以来一直从事java软件开发工作,工作中大部分数据库都是使用的Oracle,碰到的问题总结一下(随时更新). 1.sql中使用group by 分组时 ...