Skip to content

Instantly share code, notes, and snippets.

@kantale
Created January 24, 2019 12:07
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kantale/ac0516d6607b3f1c8b99e851283e402b to your computer and use it in GitHub Desktop.
Save kantale/ac0516d6607b3f1c8b99e851283e402b to your computer and use it in GitHub Desktop.
Πρόχειρες σημειώσεις από το μάθημα python, 13η διάλεξη, 24 Ιανουαρίου 2019
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"a='mitsos'"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"my name is mitsos\n"
]
}
],
"source": [
"print (f'my name is {a}')"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'my name is mitsos'"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"b = ['mitsos']\n",
"f'my name is {b[0]}' "
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'my name is mitsos'"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"c = {'name': 'mitsos'}\n",
"f'my name is {c[\"name\"]}'"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [],
"source": [
"class D:\n",
" name='mitsos'\n",
"d = D()"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'my name is mitsos'"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"f'my name is {d.name}'"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [],
"source": [
"e = set([1,2,3])"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"ename": "TypeError",
"evalue": "'set' object does not support indexing",
"output_type": "error",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[0;31mTypeError\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m<ipython-input-16-b6c773cc5fe5>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mrandom\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 2\u001b[0;31m \u001b[0mrandom\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mchoice\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0me\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
"\u001b[0;32m~/anaconda3/lib/python3.6/random.py\u001b[0m in \u001b[0;36mchoice\u001b[0;34m(self, seq)\u001b[0m\n\u001b[1;32m 257\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0mValueError\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 258\u001b[0m \u001b[0;32mraise\u001b[0m \u001b[0mIndexError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'Cannot choose from an empty sequence'\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 259\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mseq\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 260\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 261\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mshuffle\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrandom\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mNone\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;31mTypeError\u001b[0m: 'set' object does not support indexing"
]
}
],
"source": [
"import random\n",
"random.choice(e)"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [],
"source": [
"a = lambda *x: sum(x) "
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"8"
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"a(5,3)"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [],
"source": [
"def a(*x):\n",
" return sum(x)"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"10"
]
},
"execution_count": 23,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"a(5,3,2)"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"10"
]
},
"execution_count": 25,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"def f(a,b,c,d):\n",
" return sum([a,b,c,d])\n",
"\n",
"l = [1,2,3,4]\n",
"f(*l)"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"13"
]
},
"execution_count": 29,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"def f(a=3, b=4):\n",
" return a+b\n",
"\n",
"d = {'a':5, 'b': 8}\n",
"f(**d)"
]
},
{
"cell_type": "code",
"execution_count": 37,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"18\n",
"13\n",
"27\n"
]
}
],
"source": [
"def f(a,b,c,d=3, e=4):\n",
" return a+b+c+d+e\n",
"\n",
"l = [1,2,3]\n",
"d = {'d':5, 'e':7}\n",
"\n",
"\n",
"print (f(*l, **d))\n",
"\n",
"print (f(*l))\n",
"\n",
"l2 = l + [10,11]\n",
"print (f(*l2))"
]
},
{
"cell_type": "code",
"execution_count": 38,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"5\n"
]
}
],
"source": [
"def f(a):\n",
" a=4\n",
" \n",
" \n",
"a=5\n",
"f(a)\n",
"print (a)"
]
},
{
"cell_type": "code",
"execution_count": 39,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[4]\n"
]
}
],
"source": [
"def f(a):\n",
" a.append(4)\n",
" \n",
" \n",
"a=[]\n",
"f(a)\n",
"print (a)"
]
},
{
"cell_type": "code",
"execution_count": 45,
"metadata": {},
"outputs": [],
"source": [
"gene = {'name': 'brca1', 'start': 123123, 'end': 124000, \n",
" 'location': '10p4.7'}"
]
},
{
"cell_type": "code",
"execution_count": 42,
"metadata": {},
"outputs": [],
"source": [
"def length(gene):\n",
" return gene['end'] - gene['start']"
]
},
{
"cell_type": "code",
"execution_count": 44,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"877"
]
},
"execution_count": 44,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"length(gene)"
]
},
{
"cell_type": "code",
"execution_count": 46,
"metadata": {},
"outputs": [],
"source": [
"class Gene:\n",
" pass"
]
},
{
"cell_type": "code",
"execution_count": 47,
"metadata": {},
"outputs": [],
"source": [
"brca1 = Gene()\n",
"brca1.name = 'brca1'\n",
"brca1.start = 10000\n",
"brca1.end = 15000"
]
},
{
"cell_type": "code",
"execution_count": 51,
"metadata": {},
"outputs": [],
"source": [
"def length(gene):\n",
" return gene.end - gene.start\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": 52,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"5000"
]
},
"execution_count": 52,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"length(brca1)"
]
},
{
"cell_type": "code",
"execution_count": 54,
"metadata": {},
"outputs": [],
"source": [
"brca1.length = length"
]
},
{
"cell_type": "code",
"execution_count": 60,
"metadata": {},
"outputs": [
{
"ename": "TypeError",
"evalue": "length() missing 1 required positional argument: 'gene'",
"output_type": "error",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[0;31mTypeError\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m<ipython-input-60-cf678eb037ac>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mbrca1\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mlength\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
"\u001b[0;31mTypeError\u001b[0m: length() missing 1 required positional argument: 'gene'"
]
}
],
"source": [
"brca1.lengt()"
]
},
{
"cell_type": "code",
"execution_count": 65,
"metadata": {},
"outputs": [],
"source": [
"class Gene:\n",
" def length(self):\n",
" return self.end - self.start"
]
},
{
"cell_type": "code",
"execution_count": 66,
"metadata": {},
"outputs": [],
"source": [
"brca1 = Gene()\n",
"brca1.start = 100\n",
"brca1.end = 150"
]
},
{
"cell_type": "code",
"execution_count": 69,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"50"
]
},
"execution_count": 69,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"brca1.length()"
]
},
{
"cell_type": "code",
"execution_count": 86,
"metadata": {},
"outputs": [],
"source": [
"class Gene:\n",
" def __init__(self, name, start, end):\n",
" self.name = name\n",
" self.start = start\n",
" self.end = end\n",
" \n",
" def __str__(self):\n",
" return f'name: {self.name} start: {self.start} end: {self.end}'\n",
" \n",
" def length(self):\n",
" return self.end-self.start"
]
},
{
"cell_type": "code",
"execution_count": 87,
"metadata": {},
"outputs": [],
"source": [
"brca1 = Gene('brca1', 100, 150)"
]
},
{
"cell_type": "code",
"execution_count": 88,
"metadata": {},
"outputs": [],
"source": [
"tp53 = Gene('tp53', 200, 250)"
]
},
{
"cell_type": "code",
"execution_count": 89,
"metadata": {},
"outputs": [],
"source": [
"genes = [brca1, tp53]"
]
},
{
"cell_type": "code",
"execution_count": 90,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[50, 50]"
]
},
"execution_count": 90,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"[x.length() for x in genes]"
]
},
{
"cell_type": "code",
"execution_count": 94,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"name: brca1 start: 100 end: 150\n"
]
}
],
"source": [
"print(brca1)"
]
},
{
"cell_type": "code",
"execution_count": 96,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'name: brca1 start: 100 end: 150'"
]
},
"execution_count": 96,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"str(brca1)"
]
},
{
"cell_type": "code",
"execution_count": 113,
"metadata": {},
"outputs": [],
"source": [
"class Regulator(Gene):\n",
" def function(self,):\n",
" return 'FUNCTION'\n",
" \n",
" def length(self):\n",
" return 2 * (self.end - self.start)"
]
},
{
"cell_type": "code",
"execution_count": 118,
"metadata": {},
"outputs": [],
"source": [
"hla = Regulator('abc', 300, 350)"
]
},
{
"cell_type": "code",
"execution_count": 119,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'FUNCTION'"
]
},
"execution_count": 119,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"hla.function()"
]
},
{
"cell_type": "code",
"execution_count": 102,
"metadata": {},
"outputs": [
{
"ename": "AttributeError",
"evalue": "'Gene' object has no attribute 'function'",
"output_type": "error",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m<ipython-input-102-d9d1d83b9b67>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mbrca1\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfunction\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
"\u001b[0;31mAttributeError\u001b[0m: 'Gene' object has no attribute 'function'"
]
}
],
"source": [
"brca1.function()"
]
},
{
"cell_type": "code",
"execution_count": 105,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"True"
]
},
"execution_count": 105,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"isinstance(h,Regulator)"
]
},
{
"cell_type": "code",
"execution_count": 106,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"True"
]
},
"execution_count": 106,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"isinstance(h, Gene)"
]
},
{
"cell_type": "code",
"execution_count": 108,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"True"
]
},
"execution_count": 108,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"issubclass(Regulator, Gene)"
]
},
{
"cell_type": "code",
"execution_count": 110,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"False"
]
},
"execution_count": 110,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"issubclass(Gene, Regulator)"
]
},
{
"cell_type": "code",
"execution_count": 112,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"True"
]
},
"execution_count": 112,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"issubclass(Regulator, Regulator)"
]
},
{
"cell_type": "code",
"execution_count": 121,
"metadata": {},
"outputs": [],
"source": [
"l = [brca1, hla]"
]
},
{
"cell_type": "code",
"execution_count": 122,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[50, 100]"
]
},
"execution_count": 122,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"[x.length() for x in l]"
]
},
{
"cell_type": "code",
"execution_count": 135,
"metadata": {},
"outputs": [],
"source": [
"class Person:\n",
" adult_age = 18\n",
" \n",
" def __init__(self, age):\n",
" self.age = age\n",
"\n",
" def is_adult(self):\n",
" return self.age >= self.adult_age\n",
" \n",
" @staticmethod\n",
" def is_adult_age( age):\n",
" return age >= 18"
]
},
{
"cell_type": "code",
"execution_count": 130,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"True"
]
},
"execution_count": 130,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"mitsos = Person(50)\n",
"mitsos.is_adult()"
]
},
{
"cell_type": "code",
"execution_count": 137,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"True"
]
},
"execution_count": 137,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Person.is_adult_age(50)"
]
},
{
"cell_type": "code",
"execution_count": 138,
"metadata": {},
"outputs": [],
"source": [
"a = [1,2,3]\n",
"a.append(5)"
]
},
{
"cell_type": "code",
"execution_count": 140,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"list"
]
},
"execution_count": 140,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"type(a)"
]
},
{
"cell_type": "code",
"execution_count": 151,
"metadata": {},
"outputs": [],
"source": [
"class Circle:\n",
" \n",
" def __init__(self, r):\n",
" self.r = r\n",
" \n",
" def area(self):\n",
" return 3.14*self.r*self.r\n",
" \n",
" @staticmethod\n",
" def area_r(r):\n",
" return 3.14*r*r\n",
" "
]
},
{
"cell_type": "code",
"execution_count": 150,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"19.625"
]
},
"execution_count": 150,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"c = Circle(2.5)\n",
"c.area()"
]
},
{
"cell_type": "code",
"execution_count": 152,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"19.625"
]
},
"execution_count": 152,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Circle.area_r(2.5)"
]
},
{
"cell_type": "code",
"execution_count": 154,
"metadata": {},
"outputs": [],
"source": [
"import json"
]
},
{
"cell_type": "code",
"execution_count": 156,
"metadata": {},
"outputs": [],
"source": [
"with open('protein-coding_gene.json') as f:\n",
" d = json.load(f)"
]
},
{
"cell_type": "code",
"execution_count": 160,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"['responseHeader', 'response']"
]
},
"execution_count": 160,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"list(d.keys())"
]
},
{
"cell_type": "code",
"execution_count": 170,
"metadata": {},
"outputs": [],
"source": [
"aa = [x['location'] for x in d['response']['docs'] if 'location' in x]"
]
},
{
"cell_type": "code",
"execution_count": 176,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"809\n"
]
}
],
"source": [
"c = 0\n",
"for x in aa:\n",
" if '17q' in x:\n",
" c += 1\n",
" \n",
"print (c)"
]
},
{
"cell_type": "code",
"execution_count": 179,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"809"
]
},
"execution_count": 179,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"str(aa).count('17q') # WRONG"
]
},
{
"cell_type": "code",
"execution_count": 182,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"809"
]
},
"execution_count": 182,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sum('17q' in x for x in aa) # Cannot get more pythonic than this"
]
},
{
"cell_type": "code",
"execution_count": 183,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"--2019-01-24 11:12:53-- ftp://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_human/release_29/gencode.v29.annotation.gff3.gz\n",
" => ‘gencode.v29.annotation.gff3.gz’\n",
"Resolving ftp.ebi.ac.uk (ftp.ebi.ac.uk)... 193.62.192.4\n",
"Connecting to ftp.ebi.ac.uk (ftp.ebi.ac.uk)|193.62.192.4|:21... connected.\n",
"Logging in as anonymous ... Logged in!\n",
"==> SYST ... done. ==> PWD ... done.\n",
"==> TYPE I ... done. ==> CWD (1) /pub/databases/gencode/Gencode_human/release_29 ... done.\n",
"==> SIZE gencode.v29.annotation.gff3.gz ... 48435045\n",
"==> PASV ... done. ==> RETR gencode.v29.annotation.gff3.gz ... done.\n",
"Length: 48435045 (46M) (unauthoritative)\n",
"\n",
"gencode.v29.annotat 100%[===================>] 46.19M 2.31MB/s in 20s \n",
"\n",
"2019-01-24 11:13:14 (2.36 MB/s) - ‘gencode.v29.annotation.gff3.gz’ saved [48435045]\n",
"\n"
]
}
],
"source": [
"!wget ftp://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_human/release_29/gencode.v29.annotation.gff3.gz "
]
},
{
"cell_type": "code",
"execution_count": 184,
"metadata": {},
"outputs": [],
"source": [
"import gzip\n"
]
},
{
"cell_type": "code",
"execution_count": 186,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"/home/thodoris/Desktop\r\n"
]
}
],
"source": [
"!pwd"
]
},
{
"cell_type": "code",
"execution_count": 187,
"metadata": {},
"outputs": [],
"source": [
"from matplotlib import pyplot as plt"
]
},
{
"cell_type": "code",
"execution_count": 195,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Text(1.5e+08,30,'MITSOS')"
]
},
"execution_count": 195,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f08281b2fd0>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot([100000000, 200000000], [50,50], c='blue')\n",
"plt.plot([200000000,200000000], [50, 10], c='b')\n",
"plt.plot([100000000, 200000000], [10, 10], c='b')\n",
"plt.plot([100000000, 100000000], [10, 50], c='b')\n",
"plt.text(150000000, 30, \"MITSOS\")"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": 198,
"metadata": {},
"outputs": [],
"source": [
"def f(a):\n",
" # papapdes\n",
" pass\n",
"f(5)"
]
},
{
"cell_type": "code",
"execution_count": 200,
"metadata": {},
"outputs": [],
"source": [
"import requests"
]
},
{
"cell_type": "code",
"execution_count": 202,
"metadata": {},
"outputs": [],
"source": [
"url = 'http://mygene.info/v3/query?q=symbol:tpmt&fields=name&species=human'\n",
"\n",
"r = requests.get(url)"
]
},
{
"cell_type": "code",
"execution_count": 203,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"True"
]
},
"execution_count": 203,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r.ok"
]
},
{
"cell_type": "code",
"execution_count": 204,
"metadata": {},
"outputs": [],
"source": [
"data = r.json()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": 206,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{'hits': [{'_id': '7172',\n",
" '_score': 87.82477,\n",
" 'name': 'thiopurine S-methyltransferase'}],\n",
" 'max_score': 87.82477,\n",
" 'took': 5,\n",
" 'total': 1}"
]
},
"execution_count": 206,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data"
]
},
{
"cell_type": "code",
"execution_count": 210,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'thiopurine S-methyltransferase'"
]
},
"execution_count": 210,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data['hits'][0]['name']"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Overwriting project.py\n"
]
}
],
"source": [
"%%writefile project.py\n",
"import sys\n",
"\n",
"\n",
"\n",
"def answer(question):\n",
" # papades\n",
" print (f'Answering question: {question}')\n",
"\n",
" \n",
"if __name__ == '__main__':\n",
" # Entry point \n",
" print (sys.argv)\n",
" question = sys.argv[1]\n",
" answer(question)\n",
" \n",
"print (__name__)\n"
]
},
{
"cell_type": "code",
"execution_count": 214,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"-rw-rw-r-- 1 thodoris thodoris 195 Jan 24 11:58 project.py\r\n"
]
}
],
"source": [
"ls -l project.py"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"project\n"
]
}
],
"source": [
"from project import answer"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"import sys"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'3.6.4 |Anaconda, Inc.| (default, Jan 16 2018, 18:10:19) \\n[GCC 7.2.0]'"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sys.version"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"['/home/thodoris/anaconda3/lib/python3.6/site-packages/ipykernel_launcher.py',\n",
" '-f',\n",
" '/run/user/1000/jupyter/kernel-72e7bff3-0284-497a-ad5b-59d73d43e531.json']"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sys.argv"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [],
"source": [
"def dec(f):\n",
" def wrapper():\n",
" print ('Start running function')\n",
" f()\n",
" print ('FINISDHED!')\n",
" return wrapper"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [],
"source": [
"@dec\n",
"def g():\n",
" print ('world')"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Start running function\n",
"world\n",
"FINISDHED!\n"
]
}
],
"source": [
"g()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [],
"source": [
"def my_fab_wrapper(t, args, kwargs):\n",
" print ('prin')\n",
" print (t(*args, **kwargs))\n",
" print ('after')"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [],
"source": [
"def f(a,b,c=5):\n",
" return a+b+c"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"6"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"f(1,2,3)"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"prin\n",
"21\n",
"after\n"
]
}
],
"source": [
"my_fab_wrapper(f, [5,6], {'c':10})"
]
}
],
"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.6.4"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment