导读:很多朋友问到关于python能识别多少个鱼的种类的相关问题,本文首席CTO笔记就来为大家做个详细解答,供大家参考,希望对大家有所帮助!一起来看看吧!
用Python怎么统计一个列表的元素种类和各个种类的个数?
统计一个列表中每一个元素的个数在Python里有两种实现方式,
第一种是新建一个dict,键是列表中的元素,值是统计的个数,然后遍历list。
items = ["cc","cc","ct","ct","ac"]
count = {}
for item in items:
count[item] = count.get(item, 0) + 1
print(count)
#{'ac': 1, 'ct': 2, 'cc': 2}
之中用到了一个小技巧,当dict中不还没有统计过一个元素时,直接索引count[item]会报错,而使用get方法count.get(item, 0)能够设置索引不存在的键时返回0。
第二种是使用Python内置的函数。统计元素的个数是一种非常常见的操作,Python的collection包里已经有一个Counter的类,大致实现了上面的功能。
from collections import Counter
items = ["cc","cc","ct","ct","ac"]
count = Counter(items)
print(count)
#Counter({'ct': 2, 'cc': 2, 'ac': 1})
鱼类共有多少个种类?
鱼种类有:乌鳢、生鱼、乌里黑、丰鱼、孝鱼、火头鱼、黑松、乌鱼、黑鱼、黑里头、墨鱼、蛇头鱼、乌棒、黑色棒子、才鱼、青鱼 、青鲲、乌鲩、黑鲲、螺蛳青、乌青、青鲩。
青棒、黑鲩、青根鱼、鲢鱼 、扁鱼、养鱼、花鲢、麻鲢、鲢子、鲢子头、白鲢、红鲢、包公鱼、胖头鱼、 鳙鱼、黄鲢、地瓜鱼、白胖头鱼、水鲢、鱼大头鱼、黑鲢、鲫鱼、鲤鱼、哈蟆鱼、鲅鱼、带鱼。
大白鲨、巨齿鲨、鲸鲨、金枪鱼、旗鱼、剑鱼、三文鱼、小蜜蜂鱼、小丑鱼、蓝魔鬼鱼、射水鱼、狮子鱼等。
世界上鱼的种类共约2万余种。其中圆口纲约73种,软骨鱼纲约800种,硬骨鱼纲约2万种左右。 我国鱼的种类3000种左右。其中海水鱼类约2100余种,淡水鱼类1010种左右。
鱼类分类的阶元与其他生物的分类方法相同,在脊索动物门下,分为亚门、总纲、纲、亚纲、总目、目、亚目、总科、科、亚科、属、亚属、种及亚种。其基本单位是物种,由相近的种合成一级比一级大的阶元。
物种是繁殖单元,由又连续又间断的种群所组成;物种是进化单元,又是分类单元。
亚种是种以下仅有的分类阶元,又是种类繁殖单元,亚种有一定的形态特征和地理分布,是种内个体在地理上和生殖上充分隔离后所形成的种群。
我国有着漫长的海岸线、众多的江河湖泊,鱼的种类十分丰富,淡水鱼有1000多种,有草鱼、鲢鱼、鳙鱼、鱼、鲤鱼、鲫鱼等优良品种;咸水鱼约有2000多种,常见有大黄鱼、巨石斑鱼、 大马哈等。
鱼肉富含动物蛋白质和磷质等,营养丰富,滋味鲜美,易被人体消化吸收,对人类体力和智力的发展具有重大作用。无机盐、维生素含量较高。
海水鱼和淡水鱼都含有丰富的磺,还含有磷、钙、铁等无机盐。鱼肉还含有大量的维生素A、维生素D、维生素B1、尼克酸。这些都是人体需要的营养素。有些鱼体态多姿色彩艳丽,具有较高的观赏价值。
怎样识别鱼的种类
目前,一般认为世界的鱼类大约有18900种。主要分为:热带鱼、温带鱼和冷带鱼三种。其中又分淡水和咸水鱼。日本近海约有3000种鱼!
热带鱼种类目录
卵胎生鳉科
本科热带鱼品是热带鱼中最容易饲养和繁殖的入门品种。
孔雀鱼 | 红剑鱼 | 金玛丽鱼 | 黑玛丽 |
卵生鳉科
多为小型鱼,某些品种的雄鱼,具有十分美丽的花纹和色彩。
爱琴鱼 | 美国旗鱼 |
鲤科
品种繁多,地域分布很广。
虎皮鱼 | 斑马鱼 | 红尾黑鲨鱼 | 黑宝石 | 金丝鱼 | 红玫瑰 |
脂鲤科
又名拟鲤科,极著名的灯鱼多属此科。
黑裙鱼 | 食人鲳 | 玻璃扯旗 | 红绿灯 | 头尾灯鱼 | 头尾灯鱼 | 宝莲灯 | 红鼻剪刀鱼 | 刚果扯旗 |
慈鲷科,口孵鱼科,七彩即属此科。
得州豹 | 神仙鱼 | 七彩神仙鱼 | 地图鱼 | 蓝宝石 | 血鹦鹉 | 非洲凤凰 | 花老虎 | 火鹤 | 火口鱼 | 射水鱼 | 画眉鲷 | 荷兰凤凰 | 酋长短鲷 | 阿卡西短鲷 | 花罗汉 | 红宝石 | 皇冠六间 |
斗鱼科
此科鱼有一种特别呼吸器官:“辅助器”,用鱼直接呼吸空气。
吻嘴鱼 | 泰国斗鱼 | 红丽丽 | 蓝曼龙 |
鳅科、鲶科
外表奇特,色彩丰富;对水质要求不严,有些喜食青苔。
清道夫 | 丑鳅鱼 | 倒游鲶 | 红尾鲶 | 玻璃猫 | 美国花猫 |
龙鱼科
体型巨大,成鱼长50~100厘米左右,且鳞片大,并能发射不同的光线,常散发出诱人的光泽,古朴典雅。
银龙 | 黑龙 | 红龙 | 过背金龙 | 青龙 | 非洲龙鱼 | 红尾金龙 | 澳洲星点龙鱼 | 海象 |
其它品种
太多种类啊,说也说不完,那就看这儿了。
七星刀鱼 | 玻璃拉拉 | 针嘴鱼 | 五彩金凤 | 泰国虎 |
淡水鱼类有
青鱼|鳊鱼|草鱼|鲢鱼|鳙鱼|鲤鱼|鲫鱼|鲶鱼|鳢鱼|鲥鱼|石鲋鱼|鲈鱼鱼|河豚鱼|子陵鱼|弹涂鱼
怎么识别鱼类?怎么识别鱼类?
生物分类是依据生物之间的相同和不同来划分的,总共有界、门、纲、目、科属、种7个主要等级.鱼、两栖动物、爬行动物它们分别是脊椎动物亚门下的一个纲,即鱼纲、两栖纲和爬行纲.
鱼纲(区别于其它动物)的特点是:终生生活在水中,鳃呼吸,两腔心脏,无四肢,用鳍划水游泳的脊椎动物。
世界上鱼的种类共约2万余种。其中圆口纲约73种,软骨鱼纲约800种,硬骨鱼纲约2万种左右。我国鱼的种类3000种左右。其中海水鱼类约2100余种,淡水鱼类1010种左右。
鱼有多少种类
世界上鱼的种类共约2万余种。其中圆口纲约73种,软骨鱼纲约800种,硬骨鱼纲约2万种左右。
我国鱼的种类3000种左右。其中海水鱼类约2100余种。淡水鱼类1010种左右。
鱼类分类学就是要对如此繁多的种类进行分门别类,摸清他们的系统演化关系。它的基本任务不仅要识别鱼类,鉴定名称,而且要探讨鱼类彼此间的相同相异及它们相同相异的程度,进而研究物种的亲缘关系和分类系统、物种的起源、分布中心及鱼类进化的可能过程与趋向等。
它是进行渔业研究的一种必要的基础知识,在进行鱼类资源调查,开发新的渔业对象时,都必须对所研究的对象予以分类上的认识。作为水产养殖专业的学生,今后的主要任务之一就是要进行鱼类的增养殖,在进行这项工作时,是离不开鱼类分类学的。对不同水体增养殖什么种类是直接关系到经济效益的。为了养殖富于经济价值的鱼类,正确鉴定种类是必不可少的一项工作。
该工作解放前做得很少,解放后进行了大量调查研究,基本摸清了各主要海区及江河湖库的鱼类区系情况,并出版了各海区鱼类志。一些省区的鱼类志、《鲤科鱼类志》、《中国软骨鱼类志》等专著也相继出版。
第一节 鱼类分类的阶元和范畴
鱼类分类的阶元与其他生物的分类方法相同,在脊索动物门下,分为亚门、总纲、纲、亚纲、总目、目、亚目、总科、科、亚科、属、亚属、种及亚种。其基本单位是物种,由相近的种合成一级比一级大的阶元。
一、种(species)的定义
形态学:同一物种在形态构造上应有相同的特征。
生物学:生理上的相似是主要的,也就是说,在自然状态下,种是能够相互配育的自然种群的类群。这些类群与其它这样的类群在生殖上相互隔离。
鉴定物种有两个基本要求:(1)特征分明(间断性),没有中间类型;(2)特征稳定(不变性)。
物种是生物进化的基本单元,因而也是分类的基本阶元,通过种间间断而隔离发展,间断性是相对的,有种间的基本间断,还有属级、科级、目级等较大间断。综上所述,物种的定义是:物种是繁殖单元,由又连续又间断的种群所组成;物种是进化单元,又是分类单元。
亚种是种以下仅有的分类阶元,又是种类繁殖单元,亚种有一定的形态特征和地理分布,是种内个体在地理上和生殖上充分隔离后所形成的种群。亚种间可交配。
一、 属的概念 Genus
属是一个聚合的分类学阶元,包括一个或一群推测起来在系统发育上具有共同的形
态特征相区别。科与科之间有确定的间断、科的分布不少是泛世界性的。受模式属限制,如模式属名变动,则科名也要变动,根据国际命名法规,科这一级是各阶元中在命名法上受到实际的属、种和模式标本所限制的最高一级阶元。
二、 目、纲、门的概念 order class phylum
目、纲、门已被证实为分类体系中最稳定的阶元,象属、科那样,它们之间也有间断。不受模式属、种的限制。
综上所述,属是一群相关的种,科是一群相关的属,目是一群相关的科,每一个这样的类群是由下一级较低的单元所组成。这些单元具有一系列生物学和结构上的性状使有别于其他类群。
根据一般惯例,目、科等学名均用一定字尾来表示,一般采用贝尔格的意见
python可以爬取什么数据
一、爬取我们所需要的一线链接
channel_extract.py
这里的一线链接也就是我们所说的大类链接:
from bs4 import BeautifulSoupimport requests
start_url = ''host_url = ''def get_channel_urls(url):
wb_data = requests.get(url)
soup = BeautifulSoup(wb_data.text, 'lxml')
links = soup.select('.fenlei dt a') #print(links)
for link in links:
page_url = host_url + link.get('href')
print(page_url)#get_channel_urls(start_url)channel_urls = '''
'''123456789101112131415161718192021222324252627282930313233343536
那么拿我爬取的58同城为例就是爬取了二手市场所有品类的链接,也就是我说的大类链接;
找到这些链接的共同特征,用函数将其输出,并作为多行文本储存起来。
二、获取我们所需要的详情页面的链接和详情信息
page_parsing.py
1、说说我们的数据库:
先看代码:
#引入库文件from bs4 import BeautifulSoupimport requestsimport pymongo #python操作MongoDB的库import reimport time#链接和建立数据库client = pymongo.MongoClient('localhost', 27017)
ceshi = client['ceshi'] #建ceshi数据库ganji_url_list = ceshi['ganji_url_list'] #建立表文件ganji_url_info = ceshi['ganji_url_info']123456789101112
2、判断页面结构是否和我们想要的页面结构相匹配,比如有时候会有404页面;
3、从页面中提取我们想要的链接,也就是每个详情页面的链接;
这里我们要说的是一个方法就是:
item_link = link.get('href').split('?')[0]12
这里的这个link什么类型的,这个get方法又是什么鬼?
后来我发现了这个类型是
class 'bs4.element.Tab1
如果我们想要单独获取某个属性,可以这样,例如我们获取它的 class 叫什么
print soup.p['class']
#['title']12
还可以这样,利用get方法,传入属性的名称,二者是等价的
print soup.p.get('class')#['title']12
下面我来贴上代码:
#爬取所有商品的详情页面链接:def get_type_links(channel, num):
list_view = '{0}o{1}/'.format(channel, str(num)) #print(list_view)
wb_data = requests.get(list_view)
soup = BeautifulSoup(wb_data.text, 'lxml')
linkOn = soup.select('.pageBox') #判断是否为我们所需页面的标志;
#如果爬下来的select链接为这样:div.pageBox ul li:nth-child(1) a span 这里的:nth-child(1)要删掉
#print(linkOn)
if linkOn:
link = soup.select('.zz .zz-til a')
link_2 = soup.select('.js-item a')
link = link + link_2 #print(len(link))
for linkc in link:
linkc = linkc.get('href')
ganji_url_list.insert_one({'url': linkc})
print(linkc) else: pass1234567891011121314151617181920
4、爬取详情页中我们所需要的信息
我来贴一段代码:
#爬取赶集网详情页链接:def get_url_info_ganji(url):
time.sleep(1)
wb_data = requests.get(url)
soup = BeautifulSoup(wb_data.text, 'lxml') try:
title = soup.select('head title')[0].text
timec = soup.select('.pr-5')[0].text.strip()
type = soup.select('.det-infor li span a')[0].text
price = soup.select('.det-infor li i')[0].text
place = soup.select('.det-infor li a')[1:]
placeb = [] for placec in place:
placeb.append(placec.text)
tag = soup.select('.second-dt-bewrite ul li')[0].text
tag = ''.join(tag.split()) #print(time.split())
data = { 'url' : url, 'title' : title, 'time' : timec.split(), 'type' : type, 'price' : price, 'place' : placeb, 'new' : tag
}
ganji_url_info.insert_one(data) #向数据库中插入一条数据;
print(data) except IndexError: pass123456789101112131415161718192021222324252627282930
四、我们的主函数怎么写?
main.py
看代码:
#先从别的文件中引入函数和数据:from multiprocessing import Poolfrom page_parsing import get_type_links,get_url_info_ganji,ganji_url_listfrom channel_extract import channel_urls#爬取所有链接的函数:def get_all_links_from(channel):
for i in range(1,100):
get_type_links(channel,i)#后执行这个函数用来爬取所有详情页的文件:if __name__ == '__main__':# pool = Pool()# # pool = Pool()# pool.map(get_url_info_ganji, [url['url'] for url in ganji_url_list.find()])# pool.close()# pool.join()#先执行下面的这个函数,用来爬取所有的链接:if __name__ == '__main__':
pool = Pool()
pool = Pool()
pool.map(get_all_links_from,channel_urls.split())
pool.close()
pool.join()1234567891011121314151617181920212223242526
五、计数程序
count.py
用来显示爬取数据的数目;
import timefrom page_parsing import ganji_url_list,ganji_url_infowhile True: # print(ganji_url_list.find().count())
# time.sleep(5)
print(ganji_url_info.find().count())
time.sleep(5)
结语:以上就是首席CTO笔记为大家整理的关于python能识别多少个鱼的种类的全部内容了,感谢您花时间阅读本站内容,希望对您有所帮助,更多关于python能识别多少个鱼的种类的相关内容别忘了在本站进行查找喔。