




已阅读5页,还剩34页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Python序列一、概览 在Python中,最基本的数据结构是序列(sequence)。序列中的每个元素被分配一个序号即元素的位置,也称为索引。第一个索引是 0,第二个则是 1,以此类推。序列中的最后一个元素标记为 -1,倒数第二个元素为 -2,一次类推。 Python包含 6 中内建的序列,包括列表、元组、字符串、Unicode字符串、buffer对象和xrange对象。本文重点讨论列表和元组,列表和元组的主要区别在于,列表可以修改,元组则不能。二、通用序列操作 所有序列类型都可以进行某些特定的操作。这些操作包括:索引(indexing)、分片(sliceing)、加(adding)、乘(multiplying)以及检查某个元素是否属于序列的成员(成员资格)。除此之外,Python还有计算序列长度、找出最大元素和最小元素的内建函数。 1. 索引 序列中的所有元素都是有编号的从 0 开始递增。这些元素可以通过编号分别访问,如下:pythonview plaincopy1. greeting=Hello2. greeting03. H (字符串就是一个有字符组成的序列。) 使用负数索引时,Python会从右边,也就是从最后 1 个元素开始计数。最后 1 个元素的位置编号是 -1。pythonview plaincopy1. greeting-12. o 字符串字面值能够直接使用索引,而不需要一个变量引用它们。pythonview plaincopy1. Hello12. e 如果一个函数调用返回一个序列,那么可以直接对返回结果进行索引操作。pythonview plaincopy1. fourth=raw_input(Year:)32. Year:20053. fourth4. 5 2. 分片 使用分片操作来访问一定范围内的元素。分片通过冒号相隔的两个索引来实现:pythonview plaincopy1. numbers=1,2,3,4,5,6,7,8,9,102. numbers3:63. 4,5,64. numbers0:15. 1 第 1 个索引是需要提取部分的第 1 个元素的编号,而最后的索引则是分片之后剩下部分的第 1 个元素的编号。(第 1 个索引的元素是包含在分片内的,而第 2 个则不包含在分片内。) 如果分片中最左边的索引比它右边的晚出现在序列中,结果就是一个空的序列。pythonview plaincopy1. numbers-3:02. 为了让分片部分能够包含列表的最后一个元素,可以通过最后一个元素的下一个元素所对应的索引作为边界,或置空最后一个索引即可:pythonview plaincopy1. numbers7:102. 8,9,103. numbers-3:4. 8,9,10 置空同样适用于序列开始的元素:pythonview plaincopy1. numbers:32. 1,2,3 复制整个序列,可以将两个索引都置空:pythonview plaincopy1. numbers:2. 1,2,3,4,5,6,7,8,9,10 3. 步长 进行分片的时候,分片的开始和结束点需要进行指定。而另外一个参数步长通常都是隐式设置的。在普通的分片中,步长是 1。pythonview plaincopy1. numbers0:10:12. 1,2,3,4,5,6,7,8,9,10 如果步长被设置为比 1 大的数,那么就会跳过某些元素。pythonview plaincopy1. numbers0:10:22. 1,3,5,7,93. numbers3,6,34. 4 步长不能为 0 那不会向下执行 但步长可以是负数,即从右到左提取元素。pythonview plaincopy1. numbers8:3:-12. 9,8,7,6,53. numbers0:10:-24. 5. numbers10:0:-26. 10,8,6,4,2 使用一个负数作为步长时,必须让开始点(开始索引)大于结束点。 4. 序列相加pythonview plaincopy1. 1,2,3+4,5,62. 1,2,3,4,5,63. Hello,+world!4. Hello,world! 两种相同类型的序列才能进行连接操作。pythonview plaincopy1. 1,2,3+world!2. Traceback(mostrecentcalllast):3. File,line1,in4. TypeError:canonlyconcatenatelist(notstr)tolist 5. 乘法 用数字 x 乘以一个序列会生成新的序列,而在新的序列中,原来的序列将被重复 x 次。pythonview plaincopy1. python*52. pythonpythonpythonpythonpython 6. 成员资格 为了检查一个值是否在序列中,可以使用 in 运算符。pythonview plaincopy1. permissions=rw2. winpermissions3. True4. xinpermissions5. False 7. 长度、最小值和最大值 len函数返回序列中所包含元素的数量、min函数和max函数则分别返回序列中最大和最小的元素。pythonview plaincopy1. numbers=100,34,6782. len(numbers)3. 34. max(numbers)5. 6786. min(numbers)7. 348. max(2,3)9. 310. min(9,3,2,5)11. 2Python列表,元组一、简介 列表(list)是Python以及其他语言中最常用到的数据结构之一。Python使用使用中括号 来解析列表。列表是可变的(mutable)可以改变列表的内容。二、基本的列表操作 列表可以使用所有适用于序列的标准操作,例如索引、分片、连接和乘法。本文介绍一些可以改变列表的方法。 1. list 函数 通过 list(seq) 函数把一个序列类型转换成一个列表。 list(hello)h, e, l, l, o list 函数使用于所有类型的序列,而不只是字符串。 2. 改变列表:元素赋值 使用索引标记来为某个特定的、位置明确的元素赋值。 x = 1, 1, 1 x1 = 2 x1, 2, 1 不能为一个位置不存在的元素进行赋值。 3. 删除元素 从列表中删除元素也很容易:使用 del 语句来实现。 names = Alice, Beth, Cecil, Dee-Dee, Earl del names2 namesAlice, Beth, Dee-Dee, Earl 除了删除列表中的元素,del 语句还能用于删除其他元素。 4. 分片赋值 name = list(Perl) nameP, e, r, l name2: = list(ar) nameP, e, a, r 在使用分片赋值时,可以使用与原序列不等长的序列将分片替换: name = list(Perl) name1: = list(ython) nameP, y, t, h, o, n 分片赋值语句可以在不需要替换任何原有元素的情况下插入新的元素。 numbers = 1, 5 numbers1:1 = 2, 3, 4 numbers1, 2, 3, 4, 5 通过分片赋值来删除元素也是可行的。 numbers1, 2, 3, 4, 5 numbers1:4 = numbers1, 5三、列表方法 方法是一个与某些对象有紧密联系的函数。一般,方法可以这样进行调用: 对象.方法(参数)除了对象被放置到方法名之前,并且两者之间用一个点号隔开。 1. append append方法用于在列表末尾追加新的对象: lst = 1, 2, 3 lst.append(4) lst1, 2, 3, 4 append方法和其他一些方法类似,只是在恰当位置修改原来的列表。这意味着,它不是简单地返回一个修改过的新列表而是直接修改原来的列表。 2. count count 方法统计某个元素在列表中出现的次数: to, be, or, not, to, be.count(to)2 x = 1,2, 1, 1, 2, 1, 1, 2 x.count(1)2 x.count(1,2)1 3. extend extend 方法可以在列表的末尾一次性追加另一个序列中的多个值。 a = 1, 2, 3 b = 4, 5, 6 a.extend(b) a1, 2, 3, 4, 5, 6 extend 方法修改了被扩展的列表,而原始的连接操作(+)则不然,它会返回一个全新的列表。 a = 1, 2, 3 b = 4, 5, 6 a.extend(b) a1, 2, 3, 4, 5, 6 a + b1, 2, 3, 4, 5, 6, 4, 5, 6 a1, 2, 3, 4, 5, 6 4. index index 方法用于从列表中找出某个值第一个匹配项的索引位置: knights = We, are, the, knights, who, say, ni knights.index(who)4 当搜索不存在的值时,就会引发一个异常。 5. insert insert 方法用于将对象插入到列表中: numbers = 1, 2, 3, 5, 6, 7 numbers.insert(3, four) numbers1, 2, 3, four, 5, 6, 7 6. pop pop 方法会移除列表中的一个元素(默认是最后一个),并且返回该元素的值: x = 1, 2, 3 x.pop()3 x1, 2 x.pop(0)1 x2 pop方法是唯一一个即能修改列表又返回元素值(除了None)的列表方法。 7. remove remove 方法用于移除列表中某个值的第一个匹配项: x = to, be, or, not, to, be x.remove(be) xto, or, not, to, be x.remove(bee)Traceback (most recent call last): File , line 1, in ValueError: list.remove(x): x not in list 只有第一次出现的值被移除,而不存在与列表中的值是不会移除的。 remove 是一个没有返回值的原位置改变方法。它修改了列表却没有返回值。 8. reverse reverse 方法将列表中的元素反向存放。 x = 1, 2, 3 x.reverse() x3, 2, 1 该方法改变了列表但不返回值。 9. sort sort 方法用于在原位置对列表进行排序。 x = 4, 6, 2, 1, 7, 9 x.sort() x1, 2, 4, 6, 7, 9 sort 方法修改了 x 却返回了空值。四、元组:不可变序列 创建元组的语法很简单:如果你用逗号分隔了一些值,那么你就自动创建了元组。 1, 2, 3(1, 2, 3) 元组也是(大部分时候是)通过圆括号括起来的: (1,2,3)(1, 2, 3) 实现包括一个值的元组有些奇特必须加个逗号: 42,(42,) (42,)(42,) tuple函数的功能与list函数基本上是一样的:以一个序列作为参数并把它转化为元组。 tuple(1, 2, 3)(1, 2, 3) 除了创建元组和访问元组元组之外,也没有太多其他操作,可以参考其他类型的序列来实现。 元组的意义:元组可以在映射(和集合的成员)中当作键使用而列表则不行;元组作为很多内建函数和方法的返回值存在。Python字符串一、基本字符串操作 所有标准的序列操作(索引、分片、乘法、判断成员资格、求长度、取最小值和最大值)对字符串同样适用。但是,请记住字符串都是不可变的。二、字符串格式化:精简版 字符串格式化使用字符串格式化操作符即百分号%来实现。在%的左侧放置一个字符串(格式化字符串),而右侧则放置希望格式化的值。可以使用一个值,如一个字符串或者数字,也可以使用多个值的元组或者字典。pythonview plaincopy1. format=Hello.%s.%senoughforya?2. values=(world,Hot)3. print(format%values)4. Hello.world.Hotenoughforya? 注意:如果使用类表或者其他序列代替元组,那么序列就会被解释为一个值。只有元组和字典可以格式化一个以上的值。 格式化字符串的 %s 部分称为转换说明符(conversion specifier),它们标记了需要插入转换值的位置。三、字符串格式化:完整版 1. 如果右操作数是元组的话,则其中的每一个元素都会被单独格式化,每个值都需要一个对应的转换说明符。 2. 基本的转换说明符包括以下部分。 (1)%字符:标记转换说明符的开始。 (2)转换标志(可选):- 表示左对齐;+ 表示在转换值之前要加上正负号;“ ”(空白字符)表示正数之前保留空格;0表示转换值若位数不够则用 0 填充。 (3)最小字段宽度(可选):转换后的字符串至少应该具有该值指定的宽度。如果是 *,则宽度会从值元组中读出。 (4)点(.)后跟精度值(可选):如果转换的是实数,精度值表示出现在小数点后的位数。如果转换的是字符串,那么该数字就表示最大字段宽度。如果是*,那么精度就会从元组中读出。 (5)转换类型 3.1 简单转换 简单的转换只需要写出转换类型。pythonview plaincopy1. print(format%values)2. Hello.world.Hotenoughforya?3. Priceofeggs:$%d%424. Priceofeggs:$425. Hexadecimalpriceofeggs:%x%426. Hexadecimalpriceofeggs:2a 3.2 字段宽度和精度 字段宽度是转换后的值所保留的最小字符个数,精度(对于数字转换来说)则是结果中应该包含的小数位数,或者(对于字符串转换来说)是转换后的值所能包含的最大字符个数。 这两个参数都是整数(首先是字段宽度,然后是精度),通过点号(.)分隔。虽然两个都是可选的参数,但如果只给出精度,就必须包含点号。pythonview plaincopy1. frommathimportpi2. %10f%pi3. 3.1415934. %10.2f%pi5. 3.146. %.2f%pi7. 3.148. %.*s%(5,GuidovanRossum)9. Guido 3.3 符号、对齐和 0 填充 在字段宽度和精度值之前还可以放置一个“标表”,该标表可以是零、加号、减号或空格。零表示数字将会用 0 进行填充。pythonview plaincopy1. %010.2f%pi2. 0000003.14 减号(-)用来做对齐数值:pythonview plaincopy1. %-10.2f%pi2. 3.14 空白(“ ”)意味着在正数前加上空格。pythonview plaincopy1. print(%5d%10)+n+(%5d%-10)2. 103. -10 加号(+),它表示不管是正数还是负数都标示出符号。pythonview plaincopy1. print(%+5d%10)+n+(%+5d%-10)2. +103. -10四、字符串方法 字符串的方法丰富得多,这是因为字符串从 string 模块中“继承”了很多方法。尽管字符串方法完全来源于 string 模块,但是这个模块还包括一些不能作为字符串方法使用的常量和函数。下面是一些有用的字符串常量。 (1) string.digits:包换数字 0 - 9 的字符串 (2) string.letters:包含所有字母(大写和小写)的字符串 (3) string.lowercase:包含所有小写字母的字符串 (4) string.printable:包含所有可打印字符的字符串 (5) string.punctuation:包含所有标点的字符串 (6) string.uppercase:包含所有大写字母的字符串 1. find find 方法可以在一个较长的字符串中查找子字符串。它返回子串所在位置的最左端索引。如果没有找到则返回 -1。pythonview plaincopy1. Withnomoo-moohere,andamoo-moothere.find(moo)2. 83. title=MontyPythonsFlyingCircus4. title.find(Monty)5. 06. title.find(Python)7. 68. title.find(Zirquss)9. -1 find 方法还可以接受可选的起始点和结束点参数:pythonview plaincopy1. subject=$Getrichnow!$2. subject.find($)3. 04. subject.find($,1)5. 206. subject.find(!)7. 168. subject.find(!,0,16)9. -1 由起始和终止值指定的范围(第二和第三个参数)包含第一个索引,但不包含第二个索引。 2. join join 方法用来在队列中添加元素。需要添加的队列元素都必须是字符串。pythonview plaincopy1. seq=1,2,3,4,52. sep=+3. sep.join(seq)4. 1+2+3+4+55. dirs=,usr,bin,env6. /.join(dirs)7. /usr/bin/env 3. lower lower 方法返回字符串的小写字母版。pythonview plaincopy1. TrondheHammerDance.lower()2. trondhehammerdance 和 lower 方法相关的是 title 方法,它会将字符串转换为标题也就是所有单词的首字母大写,而其他字母小写。pythonview plaincopy1. thatsallfolks.title()2. ThatSAllFolks 4. replace replace 方法返回某字符串的所有匹配项均被替换之后得到的字符串。pythonview plaincopy1. Thisisatest.replace(is,eez)2. Theezeezatest 5. split split 方法将字符串分割成序列。pythonview plaincopy1. 1+2+3+4+5.split(+)2. 1,2,3,4,53. /usr/bin/env.split(/)4. ,usr,bin,env5. Usingthedefault.split()6. Using,the,default 如果不提供任何分隔符,程序会把所有空格作为分隔符(空格、制表、换行等)。 6. strip strip 方法返回去除两侧(不包括内部)空格的字符串。pythonview plaincopy1. internalwhitespaceiskept.strip()2. internalwhitespaceiskept 也可以指定需要去除的字符,将它们列为参数即可。pythonview plaincopy1. *SPAM*for*everyone!*.strip(*!)2. SPAM*for*everyone 这个方法只会去除两侧的字符,所以字符串中的星号没有被去掉。 字典是Python中唯一内建的映射类型。字典中的值并没有特殊的顺序,但是都存储在一个特定的键(Key)里。键可以是数字、字符串甚至是元组。Python字典一、创建和使用字典 字典可以通过下面的方式创建:pythonview plaincopy1. phonebook=Alice:2341,Beth:9102,Cecil:3258 字典由多个键及与其对应的值构成的对组成。每个键和它的值之间用冒号(:)隔开,项之间用逗号(,)隔开,而整个字典是由一对大括号括起来。字典中的键是唯一的,而值并不唯一。 1. dict 函数 用 dict 函数,通过其他映射(比如其他字典)或者(键,值)这样的序列对建立字典。pythonview plaincopy1. items=(name,Gumby),(age,42)2. d=dict(items)3. d4. name:Gumby,age:42 dict 函数也可以通过关键字参数来创建字典。pythonview plaincopy1. d=dict(name=Gumby,age=42)2. d3. name:Gumby,age:42 2. 基本字典操作 字典的基本行为在很多方面与序列类似: (1)len(d) 返回 d 中项(键-值对)的数量 (2)dk 返回关联到键 k 上的值 (3)dk = v 将值 v 关联到键 k 上 (4)del dk 删除键为 k 的项 (5)k in d 检查 d 中是否有含有键为 k 的项 尽管字典和列表有很多特性相同,但也有下面一些重要的区别。 (1)键类型:字典的键不一定为整型数据(但也可能是),也可能是其他不可变类型,比如浮点型(实型)、字符串或者元组。 (2)自动添加:即使那个键起初在字典中并不存在,也可以为它分配一个值,这样字典就会建立新的项。 (3)成员资格:表达式 k in d (d 为字典) 查找的是键,而不是值。 3. 字典的格式化字符串 在每个转换(conversion specifier)中的 % 字符后面,可以加上用圆括号括起来的键,后面再跟上其他说明元素。pythonview plaincopy1. phonebook2. Alice:2341,Beth:9102,Cecil:32583. Cecilsphonenumberis%(Cecil)s.%phonebook4. Cecilsphonenumberis3258. 只要所有给出的键都能在字典中找到,就可以获得任意数量的转换说明符。pythonview plaincopy1. template=2. .%(title)s3. .4. .%(title)s5. .%(text)s6. .7. data=title:MyHomePage,text:Welcometomyhomepage!8. print(template%data)9. 10. MyHomePage11. 12. MyHomePage13. Welcometomyhomepage!14. 4. 字典方法 (1) clear clear 方法清除字典中所有的项。这是个原地操作,所以无返回值(或者说返回 None)。pythonview plaincopy1. d2. name:Gumby,age:423. retured_value=d.clear()4. d5. 6. retured_value7. print(retured_value)8. None (2) copy copy 方法返回一个具有相同键-值对的新字典(这个方法实现的是浅复制(shallow copy),因为值本身就是相同的,而不是副本)。pythonview plaincopy1. x=username:admin,machines:foo,bar,baz2. y=x.copy()3. yusername=mlh4. ymachines.remove(bar)5. y6. username:mlh,machines:foo,baz7. x8. username:admin,machines:foo,baz 上面,当在 y 中替换值的时候,x 不受影响,但是,如果修改了某个值(原地修改,而不是替换),x 也会改变,因为同样的值也存储在原字典中。 避免这个问题的一种方法就是使用深复制( deep copy),复制其包含所有的值。可以使用 copy 模块的 deepcopy 函数来完成操作。 (3)fromkeys fromkeys 方法使用给定的键建立新的字典,每个键默认对应的值为 None。pythonview plaincopy1. .fromkeys(name,age)2. name:None,age:None 也可以直接在所有字典的类型 dict 上面调用方法。pythonview plaincopy1. dict.fromkeys(name,age)2. name:None,age:None 如果不想使用None作为默认值,也可以自己提供默认值。pythonview plaincopy1. dict.fromkeys(name,age,(unknown)2. name:(unknown),age:(unknown) (4)get 当使用 get 访问一个不存在的键时,没有任何异常,而得到了 None 值。pythonview plaincopy1. print(dname)2. Traceback(mostrecentcalllast):3. File,line1,in4. KeyError:name5. print(d.get(name)6. None 还可以定义“默认”值,替换 None:pythonview plaincopy1. d.get(name,N/A)2. N/A 如果键存在,get用起来就像普通的字典查询一样。 (5)items items 方法将所有的字典项以dict_items 方式返回,这些列表项中的每一项都来自于(键,值)。pythonview plaincopy1. d=title:PythonWebSite,url:,spam:02. d3. url:,title:PythonWebSite,spam:04. d.items()5. dict_items(url,),(title,PythonWebSite),(spam,0) (6)keys keys 方法将字典中的键以dict_keys形式返回。 (7)pop pop 方法用来获得对应于给定键的值,然后将这个键-值对从字典中移除。pythonview plaincopy1. d=x:1,y:22. d.pop(x)3. 14. d5. y:2 (8)popitem popitem 弹出随机的项。pythonview plaincopy1. d2. url:,title:PythonWebSite,spam:03. d.popitem()4. (url,)5. d6. title:PythonWebSite,spam:0 (9)setdefault setdefault 方法在某种程度上类似于 get 方法,就是能够获得与给定键相关联的值,除此之外,setdefault 还能在字典中不含有给定键的情况下设定相应的键值。pythonview plaincopy1. d=2. d.setdefault(name,N/A)3. N/A4. d5. name:N/A6. dname=Gumby7. d.setdefault(name,N/A)8. Gumby9. d10. name:Gumby 当键不存在的时候,setdefault 返回默认值并且相应地更新字典。如果键存在,那么就返回与其相应的值,但不改变字典。 (10)update update 方法可以利用一个字典项更新另一个字典。pythonview plaincopy1. d=title:PythonWebSite,url:,changed:Mar1422:09:15MET20082. x=title:PythonLanguageWebsite3. d.update(x)4. d5. url:,title:PythonLanguageWebsite,changed:Mar1422:09:15MET2008 提供的字典中的项会被添加到旧的字典中,若有相同的键则会进行覆盖。 (11)values values 方法以 dict_values 的形式返回字典中的值。pythonview plaincopy1. d=2. d1=13. d2=24. d3=35. d4=46. d.values()7. dict_values(1,2,3,4)Python条件、循环和其他语句一、print 和 import 的更多信息 print 打印多个表达式也是可行的,只要将它们用逗号隔开就好:pythonview plaincopy1. print(Age:,42)2. Age:42 可以看到,每个参数之间都插入了一个空格符。如果想要同时输出文本和变量值,却又不希望使用字符串格式化的话,那这个特性就非常有用了。 从模块导入函数的时候,可以使用pythonview plaincopy1. importsomemodule 或者pythonview plaincopy1. fromsomemoduleimportsomefunction 或者pythonview plaincopy1. fromsomemoduleimportsomefunction,anotherfunction,yetanotherfunction 或者pythonview plaincop
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年事业单位工勤技能-江苏-江苏管道工二级(技师)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-江苏-江苏城管监察员三级(高级工)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-新疆-新疆食品检验工三级(高级工)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-广西-广西房管员三级(高级工)历年参考题库含答案解析
- 2025年事业单位工勤技能-广东-广东中式面点师三级(高级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-安徽-安徽检验员一级(高级技师)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-北京-北京防疫员四级(中级工)历年参考题库典型考点含答案解析
- 2025年银行金融类-金融考试-银行业专业人员中级(法规+个人理财)历年参考题库典型考点含答案解析
- 2025年职业技能鉴定-眼镜定配工-眼镜定配工高级历年参考题库含答案解析(5套)
- 2025年职业技能鉴定-海洋石油-海洋石油技能鉴定电工历年参考题库含答案解析(5套)
- 滁州市珠龙广卫绢云母粉厂滁州市南谯区将军山绢云母矿1万吨-年露天采矿工程项目环境影响报告书
- 人民医院心血管外科临床技术操作规范2023版
- 2023年江苏小高考历史试卷
- 主要组织相容性复合体及其编码分子
- 优化物理教学策略的思考(黄恕伯)
- 中国移动-安全-L1,2,3(珍藏版)
- 2017年全国大学生数学建模A题
- 2023年专升本计算机题库含答案专升本计算机真题
- scratch3.0编程校本课程
- GB/T 1685-2008硫化橡胶或热塑性橡胶在常温和高温下压缩应力松弛的测定
- GB/T 14825-1993农药可湿性粉剂悬浮率测定方法
评论
0/150
提交评论