首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

2022年最新Python大数据之Python基础【六】函数与变量

不可以 dict1 = {'name': 'jack'} # TypeError: unsupported operand type(s) for *: 'dict' and 'int' # 字典不能做乘法运算...可以 str1 = '123' # TypeError: 'in ' requires string as left operand, not int # 字符串判断时,左侧的元素只能是字符串类型...,比如集合不能保存列表,字典,集合 所以就不能判断其类型的元素是否在集合内 # 3.字典判断的是元素是否在keys内,也就是是否是其中的键 切片 通过切片按照规则获取数据序列中的一部分元素 tuple...注意 :str内部的元素也是不可修改的,类似于元组 # del str1[0] # print(str1) # 结论: # 1.列表,字典可以使用del删除内部元素,但是,列表中是删除元素,字典中是删除键值对...c=3, d=4) # 注意:使用关键字参数要防止重复赋值 # TypeError: func() got multiple values for argument 'a' # func(1,2,3,

1.2K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    异常处理

    1.1 语法错误 语法错误,根本过不了python解释器的语法检测,必须在程序执行前就改正。...试图访问字典里不存在的键 KeyboardInterrupt Ctrl+C被按下 NameError 使用一个还未被赋予对象的变量 SyntaxError Python代码非法,代码不能编译(个人认为这是语法错误...,写错了) TypeError 传入对象类型与要求的不符合 UnboundLocalError 试图访问一个还未被设置的局部变量,基本上是由于另有一个同名的全局变量,导致你以为正在访问它 ValueError...,下列代码才不会出错,该条件是可预知的 age = int(age) if age == AGE: print('you got it')...break >>: nick >>: sdkf >>: 2 >>: 10 you got it 3.2 之后预防 如果错误发生的条件是不可预知的,则需要用到try...except:在错误发生之后进行处理

    1.1K10

    【Python2】03、Python对象

    : 'int' object is not iterable In [28]: In [36]: d1=dict([("x",1),("y",2)])     # d必须是元素为键值对的元祖的列表...,数字等构成的字符串或者数值,它只能作为右值出现,所谓右值是指等号右边的值,如:int a=123这里的a为左值,123为右值。...、列表和元组 字符串字面量:把文本放入单引号(必须在同一行) ,双引号(必须在同一行),三引号(跨行)中;        字符串是字符的        列表和元组是任意Python对象的序列 字符和元组属于不可变序列...}            {}:空字典 映射类型表示一个任意对象的集合,而且可以通过另一个几乎是任意键值的集合进行索引 与序列不同,映射是无序的,它通过键进行索引        任何不可变对象都可用作字典的键...,如字符串、数字、元组等        包含可变对象的列表、字典和元组不能用作键 m[k]运算符用于选择映射对象中的一项,其中“k”是一个键值        引用不存在的键会引发KeyError异常 m.iteritems

    1K20

    TypeError: unhashable type: ‘list‘:不可哈希类型:列表完美解决方法

    摘要 ✨ TypeError: unhashable type: 'list' 是Python编程中的常见错误,通常出现在试图将列表作为字典的键或插入集合时。...引言 在Python中,字典的键和集合中的元素必须是“可哈希”的。简单来说,哈希性意味着一个对象在其生命周期中具有不变的哈希值,并且该对象是不可变的。...不可变对象(如tuple、str、int)可以作为字典的键,而像列表(list)这样的可变对象则不行。...不可哈希对象:可变类型,如列表、字典、集合。 因为列表的内容可以随时更改,Python不允许将其作为字典的键或集合中的元素,原因是如果允许这样做,可能会导致集合或字典的键值匹配出现问题。 2....触发错误的场景 通常,TypeError: unhashable type: 'list' 会出现在以下情况中: 2.1 使用列表作为字典的键 my_dict = {[1, 2, 3]: "value

    33910

    【深度学习】 Python 和 NumPy 系列教程(四):Python容器:2、元组tuple详解(初始化、索引和切片、元组特性、常用操作、拆包、遍历)

    、广播 Matplotlib:绘图,子图,图像 IPython:创建笔记本,典型工作流程 二、实验环境 Python 3.7 运行下述命令检查Python版本 python...常见的容器包括列表(List)、元组(Tuple)、集合(Set)和字典(Dictionary)。 列表是有序的可变容器,可以包含不同类型的元素,使用方括号([])来创建。...my_set = {1, 2, 3, 'a', 'b', 'c'} 字典是无序的键值对容器,用于存储具有唯一键的值,使用花括号({})或者dict()函数来创建。...省略了小括号,但是仍然是一个元组。 c. tuple() 函数 tuple()函数可以将其他可迭代对象(如列表、字符串、字典等)转换为元组。...结果是变量a的值为1,变量b的值为2,变量c的值为3。 需要注意的是,变量的数量必须与元组中的元素数量相同,否则会引发异常。

    9610

    【Python 初级函数详解】—— 参数沙漠与作用域丛林的求生指南

    函数语句从下一行开始,并且必须缩进。 函数内的第一条语句是字符串时,该字符串就是文档字符串,也称为 docstring。Python 开发者最好养成在代码中加入文档字符串的好习惯。...**keywords:这是一个可变关键字参数,它会将函数调用时传入的所有未在函数定义中明确指定的关键字参数收集到一个字典中。字典的键是关键字参数的名称,值是对应的参数值。...因为在 Python 里,一个参数不能被多次赋值,所以就会抛出 TypeError: foo() got multiple values for argument 'name' 异常。...对于字典 {'name': 2},由于 name 是仅限位置参数,字典里的 'name' 键就不会和函数定义里的 name 参数冲突了。...函数内部的 'name' in kwds 语句会去检查 'name' 这个键是否在 kwds 字典里,因为 kwds 字典里确实有 'name' 键,所以函数就会返回 True。

    5100

    还在为Python“运算符”中遇到的BUG而发愁吗?,变量相关的问题和解决办法看这篇文章就够了!

    错误代码: # 尝试将整数和字符串直接连接 score = 100 print("score:" + score) # TypeError: Can't convert 'int' object...to str implicitly 运行结果: TypeError: Can't convert 'int' object to str implicitly 改正后的代码: # 将整数转换为字符串后再进行连接...错误五:使用不存在的键名访问字典中的元素 案例描述: 如果尝试使用不存在的键名访问字典中的元素,会引发键错误。...'c' in d: print(d['c']) else: print("键'c'不存在") # 输出:键'c'不存在 # 或者使用get方法,如果键不存在则返回...10") # TypeError: unsupported operand type(s) for +: 'int' and 'str' print(result) 运行结果: TypeError

    7310

    【Python基础】06、Python函数

    args:expression              args:以逗号分隔的参数列表              expression:用到args中各参数的表达式       lambda定义的代码必须是合法的表达式...有函数范围内的命名空间(local),有模块范围内的命名空间(global),有python内建的命名空间(built-in),还有类对象的所有属性组成的命名空间 Python一切皆对象,所以在Python中变量名是字符串对象...例如: In [25]: a=10       表示建立字符串对象a与Number对象10之间的对应关系。...前面已经说过,命名空间是对变量名的分组划分,所以,Python的命名空间就是对许多键-值对的分组划分,即,键值对的集合,因此: Python的命名空间是一个字典,字典内保存了变量名称与对象之间的映射关系...,字典内保存了变量名与对象之间的映射关系, 因此,查找变量名就是在命名空间字典中查找键-值对。

    2.6K10

    开源图书《Python完全自学教程》第5章

    图5-1-1 字典的组成 字典中的键值对,不能随心所欲地创立——本书的目录和页码之间也是一种对应关系,不能乱写——有如下要求: “键”必须唯一,不能重复——参考本书目录理解,目录名称不能重复。...“键”必须是不可变对象——如果书的目录名称会变化,那就不仅仅是眼花缭乱,而是手忙脚乱了。 “值”可以是 Python 中任何类型对象。 “值”可以重复。...至此,在已经学过的 Python 内置对象类型中,能够作为键值对中“键”的有:数字(整数、浮点数、复数)、字符串、元组。...: unhashable type: 'dict' 特别提醒,如果用元组作为键值对的键,其成员只能是数字、字符串或者元组,不能包括任何可变对象。...—虽然键是字符串,在 dict() 中不要将 name 和 age 写成 'name'、'age' ,特别要注意此细节。

    66020

    2022年最新Python大数据之Python基础【五】(集合)

    空集合:set() 集合是一个无序的 不重复的数据序列 # 集合: 集合是一个无序,不重复的数据序列 # 无序: 程序员无法控制其排不顺序, 程序员无法使用索引查找或修改数据 # 不重复:没有办法在字典中放入相同的值...,会自动去重,类似于字典的键 # 无序: set1 = {1, 2, 5, 6, 3, 4} # 程序员无法利用其顺序,有顺序也无用 # 了解:在集合中会使用数据的值计算哈希值,根据哈希值顺序进行排序...# 布尔值在进行计算时 True == 1 Fasle == 0 # 基础数据类型 int float bool 字符串 都可以用集合储存 set4 = {1, 12.3, True, 0, False...作为元素出现 # 拓展:不能作为集合元素的数据类型,同样不能作为字典的键出现 dict1 = {(1, 2): 3} print(dict1) # TypeError: unhashable type...: 'list' # 列表 字典 集合不能作为字典的键出现 dict2 = {[1, 2]: 3} print(dict2) 16、集合的相关操作 集合的增加 add:添加一个元素,如果值已存在

    15120

    Python 常见数据结构整理

    序列(如列表和元组)、映射(如字典)以及集合(set)是三类主要的容器。 一、序列(列表、元组和字符串) 序列中的每个元素都有自己的编号。 Python中有6种内建的序列。...其中列表和元组是最常见的类型。其他包括字符串、Unicode字符串、buffer对象和xrange对象。 下面重点介绍下列表、元组和字符串。...: 'int' object is not iterable 3、字符串 (1)创建 str1='Hello world' print str1 print str1[0] for c in str1:...特点: 键与值用冒号“:”分开; 项与项用逗号“,”分开; 字典中的键必须是唯一的,而值可以不唯一。 字典的基本操作 如何访问字典中的值?...使用字典的注意事项 1、不能允许一键对应多个值; 2、键必须是可哈希的。

    75420

    Python常见数据结构整理 Python常见数据结构整理

    字典(也叫散列表)是Python中唯一内建的映射类型。 1、键类型 字典的键可以是数字、字符串或者是元组,键必须唯一。...在Python中,数字、字符串和元组都被设计成不可变类型,而常见的列表以及集合(set)都是可变的,所以列表和集合不能作为字典的键。键可以为任何不可变类型,这正是Python中的字典最强大的地方。...TypeError: unhashable type: 'list' 2、自动添加 即使键在字典中并不存在,也可以为它分配一个值,这样字典就会建立新的项。...3、成员资格 表达式item in d(d为字典)查找的是键(containskey),而不是值(containsvalue)。...,所以不能用做字典的键。

    89770

    Python数据类型转换详解

    ,并且字符串中的元素必须为纯数字,否则无法转换。...' # str res = int(a) print(res, type(res)) # 此时python会报错,报错类型为TypeError a = [1, 2, 3] # list res...,会把字符串中的每一个字符当作列表的元素 3.元组转列表时,会把字符串中的每一个字符当作列表的元素 4.字典转列表时,只保留字典中的键 5.集合转列表时,结果是无序的,因为集合本身就是无序的 a = '...,结果是无序的 3.列表转集合时,结果是无序的 4.元组转集合时,结果是无序的 5.字典转集合时,只保字典中的键,结果是无序的 a = '123' # str res = set(a) print(...1.数字类型是非容器类型,不能转换为字典 2.字符串不能转字典类型,因为字符串不能生成二级容器 3.列表类型转字典类型,列表必须为等长二级容器,子容器中的元素个数必须为2 4.元组类型转字典类型,列表必须为等长二级容器

    24420

    Python学习—异常

    ,下列代码才不会出错,该条件是可预知的 age=int(age) if age == age1: print('you got it')...每一个try,都必须至少有一个except 1.异常类只能来处理指定的异常情况,如果非指定异常则无法处理 s1 = 'hello' try: int(s1) except IndexError...该参数是可选的,如果不提供,异常的参数是"None"。 最后一个参数是可选的(在实践中很少使用),如果存在,是跟踪异常对象。 示例: 一个异常可以是一个字符串,类或对象。...试图访问字典里不存在的键 KeyboardInterrupt Ctrl+C被按下 NameError 使用一个还未被赋予对象的变量 SyntaxError Python代码非法,代码不能编译(个人认为这是语法错误...,写错了) TypeError 传入对象类型与要求的不符合 UnboundLocalError 试图访问一个还未被设置的局部变量,基本上是由于另有一个同名的全局变量,导致你以为正在访问它 ValueError

    48920

    2022年最新Python大数据之Python基础【五】

    # TypeError: 'int' object is not iterable 括号内必须是可迭代对象 # list2.extend(4) # 字符串累心哪怕只有一个值,或者只有一个空字符串,都是可迭代类型...字典中的键是惟一的,后定义的内容值会覆盖先定义的 print(dict6) # 字典中键是唯一的但是值可以随意重复 dict7 = {'name': '小明', 'age': 18, 'id': 18...,但是该顺序没法被利用(了解) 12、字典的修改 字典[key] = 值 字典中key必须存在 update: update(键 = 值) update({键:值}) 对应的键一定存在...# 字典的遍历 dict1 = {'name': '小明', 'age': 18, 'gender': '男', 'id': '001'} # 使用for循环对字典进行遍历,默认获取的是字典的每一个键...# 布尔值在进行计算时 True == 1 Fasle == 0 # 基础数据类型 int float bool 字符串 都可以用集合储存 set4 = {1, 12.3, True, 0, False

    3.4K20
    领券