Ⅰ python 通用的序列操作
序列 (sequence)是Python最基本的一种数据结构。
序列中的每个元素都有编号,即其位置或索引,其中第一个元素的索引为0,第二个元素的索引为1,依此类推。Python的序列索引支持负数,-1表示序列的最后一个元素,这是Python不同其他很多种语言不同的地方。
Python内置了多种序列,列表、元组、字符串是其中最常用的三种,本文为你描述各种序列的通用操作。
索引从0开始,索引号为0的元素为1,greeting的索引号为0的元素为'H'。
你可能注意到'Hello'和'H'都用单引号包围,这是Python不同于其他语言的另一个地方。Python并没有专门用于表示字符的数据类型,因此一个字符就是一个只包含一个元素的字符串。
Python的序列索引支持负数,-1表示倒数第一个元素。
切片 (slicing)操作用于访问序列特定 范围 内的元素。在一对方括号内使用两个索引,并用冒号隔开:
注意到,返回的序列并未包含愿序列的第6个元素7,就相当于数学集合中的 左闭右开区间 操作。
换言之,你提供两个索引来指定切片的边界,其中第一个索引指定的元素包含在切片内,但第二个索引指定的元素不包含在切片内。
保留冒号,省略羡运备第一个索引,表示从序列起始位置开始切片;省略第二个索引,表示切片到序列末尾,包含最后一个元素:
这个操作的效果是:在指定的区间内间隔取元素,语法格式为:
例如:
步长为正数时,它从起点移到终点,而步长为负数时,它从终点移到起点。
可以使用加法运算(+运算符)拼接两个序列:
从错误消息兄毁可知,不能拼接列表和字符串,虽然它们都是序列。一般而言,不悄配能拼接不同类型的序列。
将序列与数x 相乘时,将重复这个序列x 次来创建一个新序列:
初始化一个长度为10的空列表:
成员资格检查判定一个元素是否存在于集合中,如存在返回True,否则返回False,实际上是一个布尔表达式。
语法:
例如:
内置函数 len 返回序列包含的元素个数,而 min 和 max 分别返回序列中最小和最大的元素。
Python通用的序列操作有:索引、切片、乘法、成员资格检查、长度、最小值和最大值。
Ⅱ python求最大值、最小值、求和、平均值
a=[1,2,3,4,5,6,7,8,9]
print('最大值:'+str(max(a)),'最小值:'+str(min(a)),'求和:'+str(sum(a)),'平均值:'+str(sum()/len(a)),sep='\n')
Ⅲ python中如何取一列数最大值
如果是从列表中找最大值,则可以使用max(),如:
In[279]:a=range(10)
In[280]:max(a)
Out[280]:9
如果是从数组找最大值,则可以使用numpy.max()函数,如:
In[281]:a=np.arange(10)
In[282]:a.max()
Out[282]:9
如果是一个二维数组,取某一列的最大值,则:
In[285]:a=np.arange(12).reshape(3,4)
In[286]:a
Out[286]:
array([[0,1,2,3],
[4,5,6,7],
[8,9,10,11]])
In[287]:a[2,:].max()
Out[287]:11
Ⅳ python编写程序,利用元组作为函数的返回值,求系列类型的最大值、最小值和元素个数
1、首先,定义一个数组,初值为0。
7、运行程序,输入三个一位整数,电脑会判断出最小值和最大值。
Ⅳ Python如何计算序列长度
Python编程中可以差渗用启稿len函数返回序列中所包含虚旁脊元素的数量长度、min函数和max函数返回序列中最大和最小的元素,代码如下:
>>> numbers = [100, 34, 678]
>>> len(numbers)
3
>>> max(numbers)
678
>>> min(numbers)
34
>>> max(2, 3)
3
>>> min(9, 3, 2, 5)
2
Ⅵ Python如何计算序列长度
根据你之前的问题,假定你的数据符合这种格式:
>SeqName1
Seq1
>SeqName2
Seq2
...
这里不要求Seq1只占一行(即允许其中有换行符出现)。假如Seq总是只占一行的话,其实就是奇数行是名字,偶数行是序列本体而已,读取不要太简单……
以下是简单的实现。考虑到文件可能很大,使用迭代来逐个读入数据。文件较小的情况可以使用列表表达式直接实现- -。
遍历文件时的流程:
如当前行以'>'开始,将其存为k(序列名称),直到发现下一个序列名称为止的所有行,填入v(序列)。再次发现'>'开始的行时,将(k, v)存入字典,并将v清空。此外的是实现细节。注释之后太啰嗦了,对哪里有疑问请追问。
fileFa=open("SEQ.FASTA","r")
dic,k,v={},'',[]
foriinfileFa:
ifi.startswith('>'):
dic[k]=v
k=i[1:-1]
v=[]
else:
v.append(i)
dic[k]=v
dic.pop('')
print"%ssequencesintotal"%len(dic)
for(k,v)indic.items():
print("SEQUENCE:%s LENGTH:%s"%(k,sum(map(len,v))))
使用你上一问题提供的4个序列,输出如下:
4sequencesintotal
SEQUENCE:qwe56_44514
LENGTH:98
SEQUENCE:qwe56_44606
LENGTH:82
SEQUENCE:qwe56_44424
LENGTH:43
SEQUENCE:qwe56_869
LENGTH:39
Ⅶ python求一组数组最大值,最小值,平均值
Python的数组就是列表。比如对列表ls=[1,2,3,4,5,6]来处理。
sum(ls)#返回列表总和
max(ls)#返回列表里最大值
min(ls)#返回列表里最小值
len(ls)#返回列表长度
sum(ls)/len(ls)#返回列表的平均值
(sum(ls)-max(ls)-min(ls))/(len(ls)-2)#返回比赛评分常用的规则,去掉一个最高分,去掉一个最低分,再求平均分。