关于python学习的基础语法2

张开发
2026/4/21 13:18:26 15 分钟阅读
关于python学习的基础语法2
2 Python 基本数据类型Python 中的变量不需要声明。每个变量在使用前都必须赋值变量赋值以后该变量才会被创建。在 Python 中变量就是变量它没有类型我们所说的类型是变量所指的内存中对象的类型。等号用来给变量赋值。等号运算符左边是一个变量名,等号运算符右边是存储在变量中的值。例如#!/usr/bin/python3counter100# 整型变量miles1000.0# 浮点型变量namerunoob# 字符串print(counter)print(miles)print(name)执行以上程序会输出如下结果100 1000.0 runoob2-1 多个变量赋值Python允许你同时为多个变量赋值。例如a b c 1以上实例创建一个整型对象值为 1从后向前赋值三个变量被赋予相同的数值。您也可以为多个对象指定多个变量。例如a,b,c1,2,runoob以上实例两个整型对象 1 和 2 的分配给变量 a 和 b字符串对象 “runoob” 分配给变量 c。2-2 标准数据类型a10 #整数类型b‘张三’ #字符串类型cTrue #布尔类型d10.88 #浮点数类型e[] #列表类型涉及到多个数据存储f() #元组类型也可以存储多个但是数据不可以更改gset() #集合类型数据去重h{} #字典类型涉及到属性存储Python种数据类型共有7个1.单值类型数值类型intfloat、布尔类型TrueFalse、字符串类型str2.组合类型列表类型list、字典类型dict、集合类型set、元组类型tuple3.类型检测方式 isinstance(变量名称数据类型) print(isinstance(a,int))无效转换 a‘abc’ bint(a) 字符串包含非数字字符时转为数字会报错2-3 String字符串Python中的字符串用单引号’或双引号括起来同时使用反斜杠 **转义特殊字符。字符串的截取的语法格式如下变量[头下标:尾下标]加号是字符串的连接符 星号 ***** 表示复制当前字符串紧跟的数字为复制的次数。实例如下#!/usr/bin/python3strRunoobprint(str)# 输出字符串print(str[0:-1])# 输出第一个到倒数第二个的所有字符print(str[0])# 输出字符串第一个字符print(str[2:5])# 输出从第三个开始到第五个的字符print(str[2:])# 输出从第三个开始的后的所有字符print(str*2)# 输出字符串两次print(strTEST)# 连接字符串执行以上程序会输出如下结果Runoob Runoo R noo noob RunoobRunoob RunoobTESTPython 使用反斜杠()转义特殊字符如果你不想让反斜杠发生转义可以在字符串前面添加一个 r表示原始字符串 print(Ru\noob) Ru oob print(rRu\noob) Ru\noob 另外反斜杠()可以作为续行符表示下一行是上一行的延续。也可以使用“”“…”“”或者‘’‘…’‘’跨越多行。注意Python 没有单独的字符类型一个字符就是长度为1的字符串。wordPythonprint(word[0],word[5])P nprint(word[-1],word[-6])n P与 C 字符串不同的是Python 字符串不能被改变。向一个索引位置赋值比如word[0] m’会导致错误。注意1、反斜杠可以用来转义使用r可以让反斜杠不发生转义。2、字符串可以用运算符连接在一起用*运算符重复。3、Python中的字符串有两种索引方式从左往右以0开始从右往左以-1开始。4、Python中的字符串不能改变。2-4 List列表List列表 是 Python 中使用最频繁的数据类型。列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同它支持数字字符串甚至可以包含列表所谓嵌套。列表是写在方括号[]之间、用逗号分隔开的元素列表。和字符串一样列表同样可以被索引和截取列表被截取后返回一个包含所需元素的新列表。列表截取的语法格式如下加号是列表连接运算符星号 ***** 是重复操作。如下实例#!/usr/bin/python3list[abcd,786,2.23,runoob,70.2]tinylist[123,runoob]print(list)# 输出完整列表print(list[0])# 输出列表第一个元素print(list[1:3])# 从第二个开始输出到第三个元素print(list[2:])# 输出从第三个元素开始的所有元素print(tinylist*2)# 输出两次列表print(listtinylist)# 连接列表以上实例输出结果[abcd, 786, 2.23, runoob, 70.2] abcd [786, 2.23] [2.23, runoob, 70.2] [123, runoob, 123, runoob] [abcd, 786, 2.23, runoob, 70.2, 123, runoob]与Python字符串不一样的是列表中的元素是可以改变的a[1,2,3,4,5,6]a[0]9a[2:5][13,14,15]a[9,2,13,14,15,6]a[2:5][]# 将对应的元素值设置为 []a[9,2,6]List 内置了有很多方法例如 append()、pop() 等等这在后面会讲到。注意1、List写在方括号之间元素用逗号隔开。2、和字符串一样list可以被索引和切片。3、List可以使用操作符进行拼接。4、List中的元素是可以改变的。Python 列表截取可以接收第三个参数参数作用是截取的步长以下实例在索引 1 到索引 4 的位置并设置为步长为 2间隔一个位置来截取字符串如果第三个参数为负数表示逆向读取以下实例用于翻转字符串defreverseWords(input):# 通过空格将字符串分隔符把各个单词分隔为列表inputWordsinput.split( )# 翻转字符串# 假设列表 list [1,2,3,4],# list[0]1, list[1]2 而 -1 表示最后一个元素 list[-1]4 ( 与 list[3]4 一样)# inputWords[-1::-1] 有三个参数# 第一个参数 -1 表示最后一个元素# 第二个参数为空表示移动到列表末尾# 第三个参数为步长-1 表示逆向inputWordsinputWords[-1::-1]# 重新组合字符串output .join(inputWords)returnoutputif__name____main__:inputI like runoobrwreverseWords(input)print(rw)输出结果为runoob like I2-5 Tuple元组元组tuple与列表类似不同之处在于元组的元素不能修改。元组写在小括号()里元素之间用逗号隔开。元组中的元素类型也可以不相同#!/usr/bin/python3tuple(abcd,786,2.23,runoob,70.2)tinytuple(123,runoob)print(tuple)# 输出完整元组print(tuple[0])# 输出元组的第一个元素print(tuple[1:3])# 输出从第二个元素开始到第三个元素print(tuple[2:])# 输出从第三个元素开始的所有元素print(tinytuple*2)# 输出两次元组print(tupletinytuple)# 连接元组以上实例输出结果(abcd, 786, 2.23, runoob, 70.2) abcd (786, 2.23) (2.23, runoob, 70.2) (123, runoob, 123, runoob) (abcd, 786, 2.23, runoob, 70.2, 123, runoob)元组与字符串类似可以被索引且下标索引从0开始-1 为从末尾开始的位置。也可以进行截取看上面这里不再赘述。其实可以把字符串看作一种特殊的元组。tup(1,2,3,4,5,6)print(tup[0])1print(tup[1:5])(2,3,4,5)tup[0]11# 修改元组元素的操作是非法的Traceback(most recent call last):Filestdin,line1,inmoduleTypeError:tupleobjectdoesnotsupport item assignment虽然tuple的元素不可改变但它可以包含可变的对象比如list列表。构造包含 0 个或 1 个元素的元组比较特殊所以有一些额外的语法规则tup1 () # 空元组 tup2 (20,) # 一个元素需要在元素后添加逗号string、list 和 tuple 都属于 sequence序列。注意1、与字符串一样元组的元素不能修改。2、元组也可以被索引和切片方法一样。3、注意构造包含 0 或 1 个元素的元组的特殊语法规则。4、元组也可以使用操作符进行拼接。2-6 Set集合集合set是由一个或数个形态各异的大小整体组成的构成集合的事物或对象称作元素或是成员。基本功能是进行成员关系测试和删除重复元素。可以使用大括号{ }或者set()函数创建集合注意创建一个空集合必须用set()而不是{ }因为{ }是用来创建一个空字典。创建格式parame{value01,value02,...}或者set(value)#!/usr/bin/python3student{Tom,Jim,Mary,Tom,Jack,Rose}print(student)# 输出集合重复的元素被自动去掉# 成员测试ifRoseinstudent:print(Rose 在集合中)else:print(Rose 不在集合中)# set可以进行集合运算aset(abracadabra)bset(alacazam)print(a)print(a-b)# a 和 b 的差集print(a|b)# a 和 b 的并集print(ab)# a 和 b 的交集print(a^b)# a 和 b 中不同时存在的元素以上实例输出结果{Mary, Jim, Rose, Jack, Tom} Rose 在集合中 {b, a, c, r, d} {b, d, r} {l, r, a, c, z, m, b, d} {a, c} {l, r, z, m, b, d}2-7 Dictionary字典字典dictionary是Python中另一个非常有用的内置数据类型。列表是有序的对象集合字典是无序的对象集合。两者之间的区别在于字典当中的元素是通过键来存取的而不是通过偏移存取。字典是一种映射类型字典用{ }标识它是一个无序的键(key) : 值(value)的集合。键(key)必须使用不可变类型。在同一个字典中键(key)必须是唯一的。#!/usr/bin/python3dict{}dict[one]1 - 苹果dict[2]2 - 香蕉tinydict{name:runoob,code:1,site:www.runoob.com}print(dict[one])# 输出键为 one 的值print(dict[2])# 输出键为 2 的值print(tinydict)# 输出完整的字典print(tinydict.keys())# 输出所有键print(tinydict.values())# 输出所有值以上实例输出结果1 - 苹果 2 - 香蕉 {name: runoob, code: 1, site: www.runoob.com} dict_keys([name, code, site]) dict_values([runoob, 1, www.runoob.com])构造函数 dict() 可以直接从键值对序列中构建字典如下dict([(Runoob,1),(Google,2),(Taobao,3)]){Taobao:3,Runoob:1,Google:2}{x:x**2forxin(2,4,6)}{2:4,4:16,6:36}dict(Runoob1,Google2,Taobao3){Runoob:1,Google:2,Taobao:3}另外字典类型也有一些内置的函数例如clear()、keys()、values()等。注意1、字典是一种映射类型它的元素是键值对。2、字典的关键字必须为不可变类型且不能重复。3、创建空字典使用{ }。2-8 Python数据类型转换有时候我们需要对数据内置的类型进行转换数据类型的转换你只需要将数据类型作为函数名即可。以下几个内置的函数可以执行数据类型之间的转换。这些函数返回一个新的对象表示转换的值。

更多文章