2020-2-3(109)

本文详细介绍了Python中列表和字典的基本操作,包括添加、删除、排序、查找等方法,通过具体示例展示了不同数据类型如何在列表中进行处理,以及字典的键值对管理方式。
>>> l=[1,2,3,4]
>>> l.append(1)
>>> l
[1, 2, 3, 4, 1]
>>> l.append([1,2,3,4])
>>> l
[1, 2, 3, 4, 1, [1, 2, 3, 4]]
>>> l.append("a")
>>> l
[1, 2, 3, 4, 1, [1, 2, 3, 4], 'a']
>>> l.append((1,2,3,4))
>>> l
[1, 2, 3, 4, 1, [1, 2, 3, 4], 'a', (1, 2, 3, 4)]
>>> l.append({1,2,3,4})
>>> l
[1, 2, 3, 4, 1, [1, 2, 3, 4], 'a', (1, 2, 3, 4), {1, 2, 3, 4}]
>>> l.append({1:1,2:2})
>>> l
[1, 2, 3, 4, 1, [1, 2, 3, 4], 'a', (1, 2, 3, 4), {1, 2, 3, 4}, {1: 1, 2: 2}]
>>> l.count(1)
2
>>> l.count((1,2,3,4))
1
>>> l=[1,2,3,4]
>>> l.extend([7,8,9])
>>> l
[1, 2, 3, 4, 7, 8, 9]
>>> l.append([7,8,9])
>>> l
[1, 2, 3, 4, 7, 8, 9, [7, 8, 9]]
>>> l.extend((1,1))
>>> l
[1, 2, 3, 4, 7, 8, 9, [7, 8, 9], 1, 1]
>>> l.extend({1,2,3})
>>> l
[1, 2, 3, 4, 7, 8, 9, [7, 8, 9], 1, 1, 1, 2, 3]
>>> l.extend({3:1,3:3})
>>> l
[1, 2, 3, 4, 7, 8, 9, [7, 8, 9], 1, 1, 1, 2, 3, 3]
>>> l.extend({3:1,4:3})
>>> l
[1, 2, 3, 4, 7, 8, 9, [7, 8, 9], 1, 1, 1, 2, 3, 3, 3, 4]
>>> l.index(1)
0
>>> l.pop(-1)
4
>>> l.pop(1)
2
>>> l
[1, 3, 4, 7, 8, 9, [7, 8, 9], 1, 1, 1, 2, 3, 3, 3]
>>> l.pop()
3
>>> l
[1, 3, 4, 7, 8, 9, [7, 8, 9], 1, 1, 1, 2, 3, 3]
>>> l.pop(1)
3
>>> l.pop(-1)
3
>>> l.pop(-1)
3
>>> l.pop(-1)
2
>>> l.pop(-1)
1
>>> l
[1, 4, 7, 8, 9, [7, 8, 9], 1, 1]
>>> l.remove(-1)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: list.remove(x): x not in list
>>> l
[1, 4, 7, 8, 9, [7, 8, 9], 1, 1]
>>> l.remove(1)
>>> l
[4, 7, 8, 9, [7, 8, 9], 1, 1]
>>> l.remove(1)
>>> l
[4, 7, 8, 9, [7, 8, 9], 1]
>>> l.reverse()
>>> l
[1, [7, 8, 9], 9, 8, 7, 4]
>>> l.reverse()
>>> l
[4, 7, 8, 9, [7, 8, 9], 1]
>>> l.sort()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: '<' not supported between instances of 'list' and 'int'
>>> l.remove([7,8,9])
>>> l
[4, 7, 8, 9, 1]
>>> l.sort()
>>> l
[1, 4, 7, 8, 9]
>>> l.sort()
>>> l
[1, 4, 7, 8, 9]
>>> l.sort(reverse=False)
>>> l
[1, 4, 7, 8, 9]
>>> l.sort(reverse=True)
>>> l
[9, 8, 7, 4, 1]
>>> l=["a","nvd","donji","ab","ngg","b","nggr"]
>>> l.sort(key=len)
>>> l
['a', 'b', 'ab', 'nvd', 'ngg', 'nggr', 'donji']
>>> l=["a","nvd","donji","ab","ngg","b","nggr"]
>>> l.sort(cmp=len)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'cmp' is an invalid keyword argument for sort()
>>> t=(1,2,3,4)
>>> t.append(1)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'tuple' object has no attribute 'append'
>>> t.count(1)
1
>>> t.index(1)
0
>>> t.index(3)
2
>>> t.reverse()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'tuple' object has no attribute 'reverse'
>>> t
(1, 2, 3, 4)
>>> t.sort()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'tuple' object has no attribute 'sort'
>>> d.fromkeys([1,2,3,4],["a","b","c","d"])
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'd' is not defined
>>> d=dict()
>>> d.fromkeys([1,2,3,4],["a","b","c","d"])
{1: ['a', 'b', 'c', 'd'], 2: ['a', 'b', 'c', 'd'], 3: ['a', 'b', 'c', 'd'], 4: ['a', 'b', 'c', 'd']}
>>> d
{}
>>> d.clear()
>>> d.fromkeys(["a","b","c"],1)
{'a': 1, 'b': 1, 'c': 1}
>>> d.get("a")
>>> r=d.get("a")
>>> r
>>> d
{}
>>> d.fromkeys(["a","b","c"],1)
{'a': 1, 'b': 1, 'c': 1}
>>> d
{}
>>> d=d.fromkeys(["a","b","c"],1)
>>> d
{'a': 1, 'b': 1, 'c': 1}
>>> d.get(""a)
  File "<stdin>", line 1
    d.get(""a)
            ^
SyntaxError: invalid syntax
>>> d.get("a")
1
>>> d.get("e")
>>> d.get("e",1)
1
>>> d.has_key("a")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'dict' object has no attribute 'has_key'
>>> d.items()
dict_items([('a', 1), ('b', 1), ('c', 1)])
>>> r=d.items()
>>> r
dict_items([('a', 1), ('b', 1), ('c', 1)])
>>> type(r)
<class 'dict_items'>
>>> for i,j in r:
...     print(i,j)
...
a 1
b 1
c 1
>>> d.keys()
dict_keys(['a', 'b', 'c'])
>>> d.values()
dict_values([1, 1, 1])
>>> d.pop()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: pop expected at least 1 arguments, got 0
>>> d.pop("a")
1
>>> d
{'b': 1, 'c': 1}
>>> d.pop("a",2)
2
>>> d.pop("b",2)
1
>>> d
{'c': 1}
>>> d.popitem()
('c', 1)
>>> d
{}
>>> popitem()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'popitem' is not defined
### CMeIE 数据集 和 CHIP-2020-2 数据集 的区别与联系 #### 联系 CMeIE 数据集和 CHIP-2020-2 数据集均属于中文医学领域的实体关系抽取任务数据集,旨在促进医疗自然语言处理(NLP)技术的发展。两者都包含丰富的医学文本信息,并且设计目标是帮助模型更好地理解和提取医学知识[^1]。 #### 区别 1. **数据来源** - **CMeIE 数据集**:其数据来源于广泛的医学文献和临床记录,涵盖多种疾病类型和医学场景。它具有粗粒度和细粒度关系标签的层次结构,符合医学常识逻辑和人类认知[^1]。 - **CHIP-2020-2 数据集**:该数据集专注于儿科训练语料和百种常见疾病训练语料。具体来说,儿科训练语料来源于518种儿科疾病,而百种常见疾病训练语料则来源于109种常见疾病。此外,它提供了近7.5三元组数据、2.8疾病语句和53种定义好的schema[^2]。 2. **数据规模与结构** - **CMeIE 数据集**:虽然具体的规模未明确提及,但其特点是遵循长尾分布,并且包含多层次的关系标签,能够反映真实世界的复杂性。 - **CHIP-2020-2 数据集**:明确提供了详细的规模信息,包括约7.5三元组数据和2.8疾病语句。这种明确的规模描述使其更适合需要大规模训练的任务[^2]。 3. **应用场景** - **CMeIE 数据集**:适用于更广泛的医学信息抽取任务,特别是涉及多层次关系建模的应用场景。由于其数据来源多样且标签结构复杂,适合用于测试模型在复杂医学场景中的泛化能力[^1]。 - **CHIP-2020-2 数据集**:更侧重于特定疾病的实体关系抽取,尤其是儿科和常见疾病的领域。其明确的schema定义和大规模的数据量使其成为训练高精度实体关系抽取模型的理想选择[^2]。 4. **数据质量与噪声** - **CMeIE 数据集**:由于其数据分布的真实性和长尾特性,可能包含更多噪声,对模型的鲁棒性提出了更高要求。 - **CHIP-2020-2 数据集**:虽然同样来源于真实世界数据,但由于其专注于特定领域,可能在数据清洗和标注方面更为严格,从而降低了噪声水平[^2]。 #### 示例代码对比 以下为基于两个数据集进行实体关系抽取的伪代码示例: ```python # 基于CMeIE数据集的实体关系抽取 def extract_relations_cmeie(text, schema): # 处理CMeIE数据集的多层次标签 relations = [] for entity_pair in identify_entities(text): relation = infer_relation(entity_pair, schema) if relation: relations.append(relation) return relations # 基于CHIP-2020-2数据集的实体关系抽取 def extract_relations_chip2020(text, predefined_schemas): # 利用预定义的53种schema进行关系抽取 relations = [] for entity_pair in identify_entities(text): relation = match_predefined_schema(entity_pair, predefined_schemas) if relation: relations.append(relation) return relations ``` ### 结论 CMeIE 数据集和 CHIP-2020-2 数据集各有侧重,前者更适合研究复杂医学场景下的多层次关系建模,而后者则更适合针对特定疾病领域的高精度实体关系抽取任务。两者在数据来源、规模、结构和应用场景等方面存在显著差异,但也共同推动了医疗NLP技术的发展[^1]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值