计算机二级练习仓库
Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.
 

962 рядки
22 KiB

{
"cells": [
{
"cell_type": "markdown",
"id": "2b789064",
"metadata": {},
"source": [
"# 实验9~实践12 参考答案"
]
},
{
"cell_type": "markdown",
"id": "e1fa4e6d",
"metadata": {},
"source": [
"## 实践9 元组和列表 \n"
]
},
{
"cell_type": "markdown",
"id": "d6b5ae4e",
"metadata": {},
"source": [
"### 小试身手1\n",
"(1)\t已知列表 L1 和L2,由 L1 和 L2 构造L3,并回答问题。 \n",
"```python\n",
" >>> L1=[1,2,3,4,5]\n",
" >>> L2=[\"one\",\"two\",\"three\",\"four\",\"five\"]\n",
" >>> L3=[[L1[1],L2[1]],[L1[2],L2[2]],[L1[3],L2[3]]]\n",
"L3 的值是__________\n",
"L3[1][1]的值是__________\n",
"执行 L4=L3.pop(2)后,列表L3的值是__________,L4的值是__________。\n",
"再执行L3.extend(L4),列表L3的值是__________。\n",
"```"
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "ee0db3a0",
"metadata": {},
"outputs": [],
"source": [
"L1=[1,2,3,4,5]\n",
"L2=[\"one\",\"two\",\"three\",\"four\",\"five\"]\n"
]
},
{
"cell_type": "code",
"execution_count": 11,
"id": "61ec7df3",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[[2, 'two'], [3, 'three'], [4, 'four']]"
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"L3=[[L1[1],L2[1]],[L1[2],L2[2]],[L1[3],L2[3]]]\n",
"L3"
]
},
{
"cell_type": "code",
"execution_count": 13,
"id": "873f2572",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'three'"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"L3[1][1]"
]
},
{
"cell_type": "code",
"execution_count": 14,
"id": "d3ca6442",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[4, 'four']"
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"L4=L3.pop(2)\n",
"L4"
]
},
{
"cell_type": "code",
"execution_count": 20,
"id": "7910a864",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[[2, 'two'], [3, 'three'], 4, 'four']"
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"L3"
]
},
{
"cell_type": "code",
"execution_count": 16,
"id": "f2a4aaa7",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[[2, 'two'], [3, 'three'], 4, 'four']"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"L3.extend(L4)\n",
"L3"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "a6e368db",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "markdown",
"id": "de8197bc",
"metadata": {},
"source": [
"(2)假设执行了如下语句\n",
"```python\n",
">>> s1=[0,1,2,3,4,5,6]\n",
">>> s2=['SUN','MON','TUE','WED','THU','FRI','SAT']\n",
"利用 s1、s2 和列表操作,创建下列结果的序列对象。\n",
"```"
]
},
{
"cell_type": "code",
"execution_count": 18,
"id": "d985454f",
"metadata": {},
"outputs": [],
"source": [
"s1=[0,1,2,3,4,5,6]\n",
"s2=['SUN','MON','TUE','WED','THU','FRI','SAT']"
]
},
{
"cell_type": "code",
"execution_count": 19,
"id": "a5a002be",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'SUN|MON|TUE|WED|THU|FRI|SAT'"
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"#s3: 'SUN|MON|TUE|WED|THU|FRI|SAT'\n",
"s3=\"|\".join(s2)\n",
"s3"
]
},
{
"cell_type": "code",
"execution_count": 21,
"id": "f8bb4c02",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[3, 4, 3, 4, 3, 4]"
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"#s4:[3,4,3,4,3,4]\n",
"s4=s1[3:5]*3\n",
"s4"
]
},
{
"cell_type": "code",
"execution_count": 23,
"id": "bea9fa4d",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[(0, 'SUN'), (1, 'MON'), (2, 'TUE'), (3, 'WED'), (4, 'THU'), (5, 'FRI'), (6, 'SAT')]\n"
]
}
],
"source": [
"#s5: [(0,'SUN'),(1,'MON'),(2,'TUE'),(3,'WED'),(4,'THU'),(5,'FRI'),(6,'SAT')]\n",
"s5=list(zip(s1,s2))\n",
"print(s5)"
]
},
{
"cell_type": "markdown",
"id": "b7e2a784",
"metadata": {},
"source": [
"## 小试身手2\n",
"### (1)合并列表 \n",
"使用随机函数randint(),建立两个长度为5的二维列表A和B。包含的数据如下:‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬\n",
"\n",
"A列表:包含子列表 [学号,p成绩,m成绩],学号为从1开始递增的正整数,成绩为0-100之间的随机整数。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬\n",
"\n",
"B列表:包含子列表 [学号,q成绩],学号为从1开始递增的正整数,成绩为0-100之间的随机整数‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬\n",
"\n",
"先需要将A,B两个列表数据进行合并,即将B列表中的‘q成绩’添加到A列表中的相同学号的子列表中。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬\n",
"\n",
"输入一个整数k,将B列表中的'q成绩'插入到A列表相同学号的子列表的k位置上。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬\n",
"\n",
"合并完成后,输出合并后的A列表。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬\n",
"\n",
"注意:为保证生成固定序列,本题需要使用同一个循环结构生成两个随机列表A和B,类似:\n",
"```python\n",
"for #######:\n",
" #A列表添加 学号,p成绩,m成绩\n",
" #B列表添加 学号,q成绩\n",
"运行示例:\n",
"A: [[1, 94, 58], [2, 6, 84], [3, 26, 42], [4, 39, 98], [5, 22, 18]]\n",
"B: [[1, 33], [2, 82], [3, 29], [4, 26], [5, 24]]\n",
"3\n",
"[[1, 94, 58, 33], [2, 6, 84, 82], [3, 26, 42, 29], [4, 39, 98, 26], [5, 22, 18, 24]]\n",
"```"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "c4adadb0",
"metadata": {},
"outputs": [],
"source": [
"import random\n",
"a=[]\n",
"b=[]\n",
"\n",
"for i in range(1,6): \n",
" a.append([i,random.randint(0,100),random.randint(0,100)]) \n",
" b.append([i,random.randint(0,100)])\n",
"print(\"A:\",a)\n",
"print(\"B:\",b)\n",
"p=int(input()) \n",
"for i in range(len(a)):\n",
" a[i].insert(p,b[i][1]) \n",
"print(a) "
]
},
{
"cell_type": "markdown",
"id": "f9dd4a7a",
"metadata": {},
"source": [
"### (2)成绩统计\n",
"输入用空格分隔的两个正整数n和m,表示后面要接收m个人的n门课的成绩的输入。\n",
"随后的m行,每行输入用空格分隔的n个成绩。题目保证m和n都在(0-100]之间。\n",
"请统计\n",
"(1)每门课的平均成绩。\n",
"(2)每个学生的平均成绩\n",
"(3)每门课的最高分"
]
},
{
"cell_type": "code",
"execution_count": 31,
"id": "23a32ac5",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"n=3\n",
"m=5\n",
"63 87 76\n",
"98 92 90\n",
"86 83 82\n",
"69 98 71\n",
"77 74 92\n",
"[[63, 87, 76], [98, 92, 90], [86, 83, 82], [69, 98, 71], [77, 74, 92]]\n",
"每个学生的平均成绩: [75.33, 93.33, 83.67, 79.33, 81.0]\n",
"每门课的平均成绩: [78.6, 86.8, 82.2]\n",
"每门课的最高分: [98, 98, 92]\n"
]
}
],
"source": [
"n,m = int(input(\"n=\")),int(input(\"m=\"))\n",
"Scores = []\n",
"for i in range(m):\n",
" Scores.append([int(x) for x in input().split()])\n",
"print(Scores)\n",
"avgs=[]#每个学生的平均成绩\n",
"for stu in Scores:\n",
" avgs.append(round(sum(stu)/len(stu),2))\n",
"print(\"每个学生的平均成绩:\",avgs)\n",
"\n",
"ksums=[0]*n #每门课的平均成绩\n",
"kmaxs=[0]*n #每门课的最高分\n",
"for stu in Scores:\n",
" for i in range(n):\n",
" ksums[i]+=stu[i]\n",
" if stu[i]>kmaxs[i]:\n",
" kmaxs[i] = stu[i]\n",
"kavgs = [ round(x/m,2) for x in ksums]\n",
"print(\"每门课的平均成绩:\",kavgs)\n",
"print(\"每门课的最高分:\",kmaxs)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "84af1780",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "markdown",
"id": "5262941a",
"metadata": {},
"source": [
"## 实践10 集合和字典\n",
"小试身手1 (略)"
]
},
{
"cell_type": "markdown",
"id": "471a3f13",
"metadata": {},
"source": [
"### 小试身手2\n",
"输入两个整数,在这两个整数组成的闭区间范围内生成100个随机整数,并统计出现数据的次数,按照生成随机数从小到大的顺序,每行输出一个生成的整数以及其出现的次数,以空格间隔。 \n",
"```python\n",
"例如:\n",
"输入:\n",
"3 5\n",
"输出:\n",
"3 36\n",
"4 39\n",
"5 25\n",
"```"
]
},
{
"cell_type": "code",
"execution_count": 32,
"id": "c82977a4",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"3 5\n",
"3 36\n",
"4 39\n",
"5 25\n"
]
}
],
"source": [
"import random\n",
"dic = {}\n",
"m,n=map(int,input().split())\n",
"random.seed(10)\n",
"\n",
"for i in range (100):\n",
" key = random.randint(m,n)\n",
" if key in dic:\n",
" dic[key] += 1\n",
" else:\n",
" dic[key] = 1\n",
"for i in sorted(dic.keys()):\n",
" print('{} {}'.format(i,dic[i]))"
]
},
{
"cell_type": "markdown",
"id": "9d5b06fc",
"metadata": {},
"source": [
"## 实践11 模块化程序设计 \n",
"1.完整程序,程序功能实现统计1000以内每100个整数中素数的个数。"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "dcba82ab",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" 1- 100 有26个素数\n",
"101- 200 有21个素数\n",
"201- 300 有16个素数\n",
"301- 400 有16个素数\n",
"401- 500 有17个素数\n",
"501- 600 有14个素数\n",
"601- 700 有16个素数\n",
"701- 800 有14个素数\n",
"801- 900 有15个素数\n",
"901-1000 有14个素数\n"
]
}
],
"source": [
"from math import sqrt\n",
"def isPrime(n):\n",
" m=int(sqrt(n))\n",
" for i in range(2,m+1):\n",
" if n%i ==0:\n",
" return False\n",
" return True\n",
"def countPrimes(start,end):\n",
" c=0\n",
" for n in range(start,end+1):\n",
" if isPrime(n):\n",
" c=c+1\n",
" return c \n",
"\n",
"#主程序\n",
"for start in range(1,1000,100):\n",
" print(f\"{start:3d}-{start+99:4d} 有{countPrimes(start,start+99)}个素数\")\n",
" "
]
},
{
"cell_type": "markdown",
"id": "e33847ab",
"metadata": {},
"source": [
" ## 3.斐波那契数列\n",
" ### (1) 单变量实现"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "efa91d0c",
"metadata": {},
"outputs": [],
"source": [
"def fib(n):\n",
" if n<=2:\n",
" return 1\n",
" f1=f2=1\n",
" while n>=3:\n",
" f3=f1+f2\n",
" f1,f2=f2,f3\n",
" n=n-1\n",
" return f3\n",
"\n",
"\n",
"n=int(input(\"n=\"))\n",
"print(fib(n))\n"
]
},
{
"cell_type": "markdown",
"id": "4d0b3b92",
"metadata": {},
"source": [
"## (2) 列表实现"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "48aa767e",
"metadata": {},
"outputs": [],
"source": [
"def fib( n ):\n",
" if n<=2:\n",
" return 1\n",
" FL=[1,1]\n",
" i=2\n",
" while i<n:\n",
" FL.append(FL[i-1]+FL[i-2])\n",
" i=i+1\n",
" return FL[-1] \n",
" \n",
"n=int(input(\"n=\"))\n",
"print(fib(n))\n"
]
},
{
"cell_type": "markdown",
"id": "5dee8615",
"metadata": {},
"source": [
"## (3) 字典实现"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "4cde2e34",
"metadata": {},
"outputs": [],
"source": [
"def fib(n): \n",
" a = 0\n",
" b = 1\n",
" dic = {} ## {} or dict() \n",
" for i in range(n): ## range \n",
" dic[i]=a ## a \n",
" a,b=b,a+b\n",
" \n",
" return dic ## dic \n",
" \n",
"#调用函数生成斐波那契数列中的前20个斐波那契数\n",
"fibonac = fib(20) ## fib(20) 调用函数 \n",
" print(fibonac[key], end=\",\")\n"
]
},
{
"cell_type": "markdown",
"id": "7494690d",
"metadata": {},
"source": [
"## (4)递归函数"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "5da061f6",
"metadata": {},
"outputs": [],
"source": [
"def Fib(n):\n",
" if n==1 or n==2 :\n",
" return 1\n",
" return Fib(n-1)+Fib(n-2)\n",
"\n",
"n=int(input(\"n=\"))\n",
"print(Fib(n))\n",
"\n",
"\n"
]
},
{
"cell_type": "markdown",
"id": "fdcc945d",
"metadata": {},
"source": [
"## (5) 优化的递归函数"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "46f27dea",
"metadata": {},
"outputs": [],
"source": [
"d_fib={1:1,2:1}\n",
"def Fib(n):\n",
" if n in d_fib :\n",
" return d_fib[n]\n",
" m=Fib(n-1)+Fib(n-2)\n",
" d_fib[n]= m\n",
" return m\n",
"\n",
"n=int(input(\"n=\"))\n",
"print(Fib(n))"
]
},
{
"cell_type": "markdown",
"id": "eecb1ba6",
"metadata": {},
"source": [
"## 实践12 再谈Python函数 \n",
"### 小试身手(1) \n",
"阅读可变参数的vfunc函数,仿写milti函数实现返回所有参数的乘积"
]
},
{
"cell_type": "code",
"execution_count": 33,
"id": "b4245d1d",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"720"
]
},
"execution_count": 33,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"def milti(*num):\n",
" p=1\n",
" for x in num:\n",
" p=p*x\n",
" return p\n",
"milti(1,2,3,4,5,6)"
]
},
{
"cell_type": "markdown",
"id": "e2c1ee22",
"metadata": {},
"source": [
"### 小试身手(2) \n",
"1.判断奇数 \n",
"判断奇数的函数lambda函数的定义和使用 \n",
"(1)编写一个函数isOdd,能够判断一个整数是否是奇数,返回True或False。 \n"
]
},
{
"cell_type": "code",
"execution_count": 35,
"id": "af90b317",
"metadata": {},
"outputs": [],
"source": [
"\n",
"isodd = lambda x: x%2 == 1"
]
},
{
"cell_type": "markdown",
"id": "519d41a6",
"metadata": {},
"source": [
"(2)请写出输入一个数x,调用isOdd函数判断x是否是奇数的程序段"
]
},
{
"cell_type": "code",
"execution_count": 36,
"id": "b75e2c05",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"x=8\n",
"False\n"
]
}
],
"source": [
"x = int(input(\"x=\"))\n",
"print(isodd(x))"
]
},
{
"cell_type": "markdown",
"id": "71637790",
"metadata": {},
"source": [
"(3)请写出求50-100之间所有奇数的和的程序段,(使用isOdd实现奇数判断)。"
]
},
{
"cell_type": "code",
"execution_count": 43,
"id": "22543b83",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"s= 1875\n"
]
}
],
"source": [
"s=0\n",
"for x in range(50,100):\n",
" if isodd(x):\n",
" # print(x)\n",
" s+=x\n",
"print(\"s=\",s)\n"
]
},
{
"cell_type": "markdown",
"id": "3ad734be",
"metadata": {},
"source": [
"(4)请写出求50-100之间所有偶数的和的程序段(使用isOdd实现偶数判断)。"
]
},
{
"cell_type": "code",
"execution_count": 41,
"id": "23d97c6a",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"s= 1950\n"
]
}
],
"source": [
"s=0\n",
"for x in range(50,101):\n",
" if not isodd(x):\n",
" # print(x)\n",
" s+=x\n",
"print(\"s=\",s)\n"
]
},
{
"cell_type": "markdown",
"id": "71f64423",
"metadata": {},
"source": [
"2.构造整数:求由任意个整数上的个位数构造的新整数并输出。 \n",
"具体要求 \n",
"(1)编写lambda函数getLastBit,该函数返回正整数number的个位数,例如正整数1234,则返回4。 \n",
"(2)编写可变参数的函数makeNumber,求任意个整数的个位数构成的一个新整数。 \n",
"(3)输出(45、81、673、938)4个数的个位数构成的新整数,得到的新的整数为:5138。请填空完整程序。 \n"
]
},
{
"cell_type": "code",
"execution_count": 45,
"id": "2b89059b",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"新整数是5138\n"
]
}
],
"source": [
"#定义lambda函数getLastBit返回一个数的个位数\n",
"getLastBit=lambda number:number%10\n",
"\n",
"#定义一个可变参数的函数makeNumber,求任意个整数的个位数构成的一个新整数\n",
"def makeNumber(*b):\n",
" s=0\n",
" for i in b:\n",
" s=s*10+getLastBit(i)\n",
" return s\n",
"\n",
"#输出(45、81、673、938)4个数的个位数构成的新整数。\n",
"\n",
"print(f\"新整数是{makeNumber(45,81,673,938)}\")\n"
]
},
{
"cell_type": "markdown",
"id": "cf9617cc",
"metadata": {},
"source": [
"## 实践13 递归函数"
]
},
{
"cell_type": "markdown",
"id": "b26582d3",
"metadata": {},
"source": [
"### 小试身手"
]
},
{
"cell_type": "markdown",
"id": "0bff8c63",
"metadata": {},
"source": [
"1.使用递归求最大公约数"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "0bd1eb79",
"metadata": {},
"outputs": [],
"source": [
"def gcd(m,n):\n",
" if m%n == 0:\n",
" return n\n",
" else:\n",
" return gcd(n,m%n)\n",
"print(gcd(15,25))"
]
},
{
"cell_type": "markdown",
"id": "d8006798",
"metadata": {},
"source": [
"2.使用递归方法逆序输出一个整数中的数字"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "099d4634",
"metadata": {},
"outputs": [],
"source": [
" def reverseDisplay(value):\n",
" if value>0:\n",
" print(value%10,end=\"\")\n",
" reverseDisplay(value//10)\n",
" return"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "cc25a415",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"12345"
]
}
],
"source": [
"reverseDisplay(54321)"
]
},
{
"cell_type": "markdown",
"id": "0e80ecad",
"metadata": {},
"source": [
"3.使用递归方法逆序输出一个字符串中的字母 "
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "a2ff79ad",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"edcba"
]
}
],
"source": [
"def reverseDisplay(s):\n",
" if len(s)!=1:\n",
" reverseDisplay(s[1:])\n",
" print(s[0],end=\"\")\n",
"reverseDisplay(\"abcde\")"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "fcc70358",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.10"
}
},
"nbformat": 4,
"nbformat_minor": 5
}