1.今天遇到一个问题如果输入的是字符串还是整数或者是小数如何将他们区分 首先isdigit()只能用来判断字符串输入的是否是整数,无法判断是否是小数 所以,先判断该字符串是否是整数,如果是返回3, ...不是的话说明是字母或者是小数,然后判断是否是小数,如果是小数的话返回1, 是字母的或其他的话返回2 def is_float(i): if i.isdigit():#只能用来判断整数的字符串...and left.startswith('-'): # 如果小数点左边有- new_left = left.split('-')[-1] # 判断去掉后的还是不是数字...: return False 更简单的判断方法: while True: num = input("请输入一个数字:") try: n1=eval...print('输入的是小数请重新输入:') continue else: print("输入的是整数没问题")
在有的资料中,还提出了“基础对象类型”的类别,包括整数类型、浮点数类型、字符串类型和布尔类型。所以,根据对象的不同特点,可以有不同的聚类结果。...= ['0512', '0571', '021'] 为了让城市和区号能对应起来,在创建列表的时候必须按照同样的索引顺序。...若要显示 'soochow' 的电话号码,必须通过每个列表的索引获取: >>> print(f"{cities[0]}: {phones[0]}") soochow: 0512 类似这样,一个对象与另外一个对象之间建立对应关系...“键”必须是不可变对象——如果书的目录名称会变化,那就不仅仅是眼花缭乱,而是手忙脚乱了。 “值”可以是 Python 中任何类型对象。 “值”可以重复。...至此,在已经学过的 Python 内置对象类型中,能够作为键值对中“键”的有:数字(整数、浮点数、复数)、字符串、元组。
如果读者查看 set() 的帮助文档,会发现其参数必须是可迭代对象(这很重要)。至此,我们已经学过的 Python 内置对象中,符合此要求的有:字符串、列表、元组、字典。...,不是空集合,是一个空字典,如果要创建空集合,须使用注释(3)的方式。...与字典一样,集合没有索引,或者说它不属于序列,即其中的成员本“无序”,即不需要用序列中的索引为每个成员建立映射关系,故不支持诸如列表中的索引、切片和其他序列特有的操作。...不论用 set() 还是用符号 { } 创建集合对象,其的成员必须是“不可变对象”——在5.1.1节中解释字典的键值对的键时曾使用过这个术语。...再总结一下,到现在所学的 Python 内置对象类型中,属于“不可变对象”的有:浮点数、整数、复数、字符串、元组;属于“可变对象”的有:列表、字典。
一、Python对象的相关术语 Python中一切皆对象,python程序中保存的所有数据都是围绕对象这个概念展开的;所有的对象都是由类实例化而来的,只不过这些类有些是python内置的类;例如,整数和浮点数...():将字符串转换为元祖 set():将字符串转为集合 frozenset():将字符串转换为不可变集合 dict(d):创建字典;d必须元素为键值对的元祖的列表 chr():将整数转换为字符...,包括字符串、列表和元组 字符串字面量:把文本放入单引号(必须在同一行) ,双引号(必须在同一行),三引号(跨行)中; 字符串是字符的 列表和元组是任意Python对象的序列...} {}:空字典 映射类型表示一个任意对象的集合,而且可以通过另一个几乎是任意键值的集合进行索引 与序列不同,映射是无序的,它通过键进行索引 任何不可变对象都可用作字典的键...与序列不同,集合不提供索引或切片操作 与字典不同,集合不存在相关的键值 放入集合中的项目必须是不可变的 集合有两种类型: 可变集合:set() 不可变集合:frozenset
在Python中,可以通过异常处理机制来处理代码执行过程中出现的异常,避免程序崩溃或出现错误结果。...Python中提供了许多内置的异常类型,常见的异常类型包括:NameError当尝试访问一个未定义的变量时,会抛出NameError异常。...a = "Hello"b = 2c = a + b # 抛出TypeError异常,无法将字符串和整数相加ValueError当函数或操作应用于具有正确类型但不适合特定值的对象时,会抛出ValueError...a = int("Hello") # 抛出ValueError异常,无法将字符串转换为整数ZeroDivisionError当尝试除以0时,会抛出ZeroDivisionError异常。...a = [1, 2, 3]b = a[3] # 抛出IndexError异常,超出了列表索引范围KeyError当尝试访问不存在的字典键时,会抛出KeyError异常。
None >>> 字典 字典(Dictionaries)是 Python 中一个非常有用的内置数据类型。它不像列表一样通过数字索引来访问,字典当中的元素是通过键来存取。...key 必须是不可变对象。...字典方法 我们知道字典是可变对象,可以像列表一样,字典的键值存储的数值可以重新指派另外的值。 不同于列表的是,我们可以通过字典的键值存储数据,不管这个键存不存在字典里。...print(s) 运行结果: >>> Hello,Python Hi,man,you have $100 >>> % 运算符就是用来格式化字符串的,下图是常见的占位符。...在字符串内部,%s 表示用字符串替换,%d表示用整数替换,有几个 %? 占位符,后面就跟几个变量或者值,顺序需要对应好。如果只有一个 %?,括号可以省略。
如果__len__返回零(且没有实现覆盖这种行为的__nonzero__),对象在布尔上下文中将被视为假(就像空的列表、元组、字符串和字典一样)。...如果键的类型不合适(如对序列使用字符串键),可能引发TypeError异常。 对于序列,如果索引的类型是正确的,但不在允许的范围内,应引发IndexError异常。...def check_key(key): """ 指定的键是否是可接受的索引? 键必须是非负整数,才是可以接受的。...如果不是整数, 将引发TypeError异常;如果是负数,将引发IndexError 异常(因为这个序列的长度是无穷的) """ if not isinstance...如果所使用的索引类型非法,将引发TypeError异常;如果索引类型正确,但不再允许的范围内(即为负数),将引发IndexError异常。
Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。 在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型。...3、Python中的字符串有两种索引方式,从左往右以0开始,从右往左以-1开始。 4、Python中的字符串不能改变。 List(列表) List(列表) 是 Python 中使用最频繁的数据类型。...)(字典) 字典(dictionary)是Python中另一个非常有用的内置数据类型。...字典是一种映射类型,字典用"{ }"标识,它是一个无序的键(key) : 值(value)对集合。 键(key)必须使用不可变类型。 在同一个字典中,键(key)必须是唯一的。 #!...注意: 1、字典是一种映射类型,它的元素是键值对。 2、字典的关键字必须为不可变类型,且不能重复。 3、创建空字典使用 { }。
for循环 目录: for简介代码格式语法格式可被迭代的数据类型列表字典字符串不可被迭代的数据类型整数浮点值布尔值空值整数转化为范围后可被迭代range(y)range(x, y)range(x, y...均是从x开始,到y但是不包括y的迭代。而i是interval的缩写。表示间隔。既从x开始循环后,下一次的循环与上一次循环间隔多少。...迭代列表时获取索引 我们通过上边迭代列表和字典的代码中可以看出来,for后边的变量在迭代列表的时候是列表内的元素、迭代字典的时候则是字典里边的键名。...那么如果我想迭代字典时,有个变量存放列表中各项所对应的偏移量(索引)呢? 通过range函数的搭配,我们不仅可以迭代整数,还能迭代列表的索引。 于是我就试了下边的写法,但是他报错了。...就是小学时候我们铅笔盒盖子内部上印刷的那种,表格形式的。 【Python】循环for源代码地址
环境: python2.7.5 系统:centos 7 x86_64 1.数值类型 1.1整型int 整数有正整数和负整数 在32位机器上,整型的位宽为32位,取值范围为-2147483648~...''' - 三重引号(docstring),三引号可以是三个单引号,也可以是三个双引号,三引号也可以换行,除了能定义字符串还可以用作注释, 字符串是序列,可以通过索引取每个字符 In [1]: a =...元组和字符串一样是不可变的 - 元组可以存储一系列的值 - 元组通常用在用户定义的函数能够安全地采用一组值的时候,即被使用的元组的值不会改变。...{} 字典是python中的唯一的映射类型(哈希表) 字典对象是可变的,但是字典的键必须使用不可变对象,键值创建可以是字符串和元组,但是不能是列表,因为列表是可变的 ,一个字典中可以使用不同类型的键值...,字典中的key是唯一的。
字符串的截取的语法格式如下: 变量[头下标:尾下标] 索引值以 0 为开始值,-1 为从末尾的开始位置。 加号 (+) 是字符串的连接符, 星号 (*) 表示复制当前字符串,紧跟的数字为复制的次数。...3、Python中的字符串有两种索引方式,从左往右以0开始,从右往左以-1开始。 4、Python中的字符串不能改变。 List(列表) List(列表) 是 Python 中使用最频繁的数据类型。...2、和字符串一样,list可以被索引和切片。 3、List可以使用+操作符进行拼接。 4、List中的元素是可以改变的。...字典是一种映射类型,字典用"{ }"标识,它是一个无序的键(key) : 值(value)对集合。 键(key)必须使用不可变类型。 在同一个字典中,键(key)必须是唯一的。 实例: #!...注意: 1、字典是一种映射类型,它的元素是键值对。 2、字典的关键字必须为不可变类型,且不能重复。 3、创建空字典使用 { }。
快速入门【四】-----各类函数创建 python快速入门【五】---- 面向对象编程 python快速入门【六】----真题测试 ---- python快速入门【二】----常见的数据结构 字典 字典是将键...值可以是任何值(列表,函数,字符串,任何东西)。键(key)必须是不可变的,例如,数字,字符串或元组。...值得注意的是,python是一种基于零索引的语言。所有这些意味着元组中的第一个值是索引0。...一些元组可以用作字典键(特别是包含不可变值的元组,如字符串,数字和其他元组)。...: unhashable type: 'list' Task: 用Python生成斐波那契序列 Fibonacci序列是一个整数序列,其特征在于前两个之后的每个数字是前两个数字的总和。
传入字符串,并指定了进制,则按对应进制将字符串转换成10进制整数。...当第二个参数不提供时,第一个参数必须是一个支持可迭代协议(即实现了__iter__()方法)的集合(字典、集合、不可变集合),或者支持序列协议(即实现了__getitem__()方法,方法接收一个从0开始的整数参数...7.len(s) 返回对象的长度,参数可以是序列(比如字符串、字节数组、元组、列表和range对象),或者是集合(比如字典、集合、不可变集合) 如果参数为其它类型,则其必须实现__len__方法,并返回整数...当传入多个可迭代对象时,函数的参数必须提供足够多的参数,保证每个可迭代对象同一索引的值均能正确传入函数。 当传入多个可迭代对象时,且它们元素长度不一致时,生成的迭代器只到最短长度。...map函数是一个典型的函数式编程例子。 总结 转眼已经自学Python一周了,虽然平时工作还是比较忙的,学习的时间不是很多,但会一直坚持下去的。
)",因为val是int类的实例,所以是一样的代码,帮助文档也一样 3.数据类型 字符串: python中字符串比较特别的地方在于它是一种序列而且又是不可变对象 例子: In [165]: s1='haha...字符串赋值必须用''、""、''' ''' 或者""" """括起来,(三个引号的可以换行) 这些特殊使得解释器遇到没引号的字符是认为它是变量,而带引号则认为是字符。...(x) 将一个整数转换为Unicode字符 ord(x) 将一个字符转换为它的整数值 hex(x) 将一个整数转换为一个十六进制字符串 oct(x) 将一个整数转换为一个八进制字符串...键必须独一无二,但值则不必;值可以取任何数据类型,但必须是不可变的,如字符串,数或元组。 字典内置的函数: cmp(dict1, dict2) 比较两个字典元素。...len(dict) 计算字典元素个数,即键的总数。 str(dict) 输出字典可打印的字符串表示。 type(variable) 返回输入的变量类型,如果变量是字典就返回字典类型。
,而之后必须恢复到之前的缩进格式。...,该错误发生在如下代码中: 而你实际想要这样做: 6)尝试连接非字符串值与字符串(导致 “TypeError: Can’t convert ‘int’ object to str implicitly”...该错误发生在如下代码中: 15)尝试使用 range()创建整数列表(导致“TypeError: ‘range’ object does not support item assignment”) 有时你想要得到一个有序的整数列表...该错误发生在如下代码中: 也许这才是你想做: (注意:在 Python 2 中 spam = range(10) 是能行的,因为在 Python 2 中 range() 返回的是list值,但是在 Python...在Python中是没有这样的操作符的。
Python数据类型主要包括数字,字符串,列表,元组和字典。...字符串,列表,元组和字典都是序列,序列最主要两个特点是索引操作和切片操作,索引操作让我们从序列中抓取一个特定项目,切片操作让我们能够获取序列的一个切片,即一部分序列。...1.数字 Python支持五种基本数字类型,其中有三种是整数类型。...:第一个字符串的索引是0,最后一个字符串的索引是-1,通过索引和切片操作可以获得字符串的值。...字典是Python中的映射数据类型,工作原理类似Perl中的关联数组或者哈希表,由键-值(key-value)对构成。
Python的基本数据类型有整数,浮点数,布尔,字符串,它们是最基本的数据。...Python内置的数据结构有: 列表(list) 元组(tuple) 字典(dict) 集合(set) 在Python语言中,以上4种数据结构和基础数据类型(整数、浮点数等)统称为“内置类型”(Built-in...与我们生活中不同的是,列表的第一元素的索引是0。...[55]: 3 (2)max() 返回列表元素中的最大值,列表元素必须是同一类型且可比较,比如都是数字型的,或都是字符串,如果类型不统一就会报错: In [57]: max(['a', 'b', 'c...: '<' not supported between instances of 'str' and 'int' (4)sum() 计算列表所有元素的和,其元素类型必须是数值型的(整数、浮点数) In
” 通常你想要通过索引来迭代一个list或者string的元素,这需要调用 range() 函数。...该错误发生在如下代码中: 5.尝试修改string的值 提示:“TypeError: 'str' object does not support item assignment” string是一种不可变的数据类型...该错误发生在如下代码中: 而你实际想要这样做: 6.尝试连接非字符串值与字符串 提示: “TypeError: Can't convert 'int' object to str implicitly”...该错误发生在如下代码中: 15.尝试使用 range()创建整数列表 提示:“TypeError: 'range' object does not support item assignment” 有时你想要得到一个有序的整数列表...该错误发生在如下代码中: 也许这才是你想做: (注意:在 Python 2 中 spam = range(10) 是能行的,因为在 Python 2 中 range() 返回的是list值,但是在 Python
TypeError:当操作或函数应用于错误类型的对象(例如将字符串添加到整数)时,将引发此异常。NameError:当在当前作用域中找不到变量或函数名称时,将引发此异常。...IndexError:当索引超出列表、元组或其他序列类型的范围时,将引发此异常。KeyError:当在字典中找不到键时,会引发此异常。...ValueError:当使用无效的参数或输入调用函数或方法时,例如,当字符串不表示有效整数时,尝试将字符串转换为整数,则会引发此异常。...x = 5y = "hello"z = x + y输出:尝试 catch 块来解决它:代码尝试将整数 (x) 和字符串 (y) 相加,这不是有效的操作,它将引发 x y TypeError 。...Try with Else Clause 在 Python 中,还可以在 try-except 块上使用 else 子句,该子句必须在所有 except 子句之后存在。
0.导语 Python是一种跨平台的计算机程序设计语言。...1 Python数据类型 1.1 字符串 在Python中用引号引起来的字符集称之为字符串,比如:'hello'、"my Python"、"2+3"等都是字符串 Python中字符串中使用的引号可以是单引号...1.2 整数与浮点数 整数 Python可以处理任意大小的整数,当然包括负整数,在程序中的表示方法和数学上的写法一模一样 i = 7 print (i) 7 7 + 3 10 7 - 3 4...集合的格式是:set(),其中()内可以是列表、字典或字符串,因为字符串是以列表的形式存储的 studentsSet = set(mylist) print (studentsSet) {0, 1,...,并把结果作为新的list返回;reduce把一个函数作用在一个序列[x1, x2, x3...]上,这个函数必须接收两个参数,reduce把结果继续和序列的下一个元素做累积计算 myList = [-
领取专属 10元无门槛券
手把手带您无忧上云