added persistent user database

This commit is contained in:
Jan Metzler 2020-12-20 22:11:12 +01:00
parent c4014f0fba
commit 1695bfc0f2
3 changed files with 96 additions and 66 deletions

View File

@ -1,6 +1,9 @@
from discord.ext import commands from discord.ext import commands
import asyncio
import random import random
bot = commands.Bot(command_prefix="!")
class sf_user: class sf_user:
def __init__(self, id, username, dmchannel): def __init__(self, id, username, dmchannel):
self.id = id self.id = id
@ -9,9 +12,20 @@ class sf_user:
self.question = 0 self.question = 0
self.category = 0 self.category = 0
self.semester = 0 self.semester = 0
bot = commands.Bot(command_prefix="!") async def initialize():
users = [] await bot.login("Nzg1MTkxODM3OTg3MzczMDg2.X80Q4g.bK_vMhhESanMOA78KxHfmJft2vk")
userfile = open("users.txt")
userlines = userfile.readlines()
for i in userlines:
userdata = i.split("|")
add_user = await bot.fetch_user(userdata[1])
users.append(sf_user(userdata[0], add_user, await add_user.create_dm()))
userfile.close()
await bot.connect()
@bot.event @bot.event
async def on_ready(): async def on_ready():
@ -25,8 +39,13 @@ async def start(ctx):
if i.name == ctx.author: if i.name == ctx.author:
await ctx.send("User already in database") await ctx.send("User already in database")
return return
users.append(sf_user(len(users), ctx.author, await ctx.author.create_dm())) users.append(sf_user(len(users), ctx.author.id, await ctx.author.create_dm()))
await users[-1].channel.send("Hello") await users[-1].channel.send("Hello")
userfile = open("users.txt", "a")
userfile.write(f"{users[-1].id}|{users[-1].name}|{users[-1].channel}\n")
userfile.close()
return return
@ -49,14 +68,19 @@ async def question(ctx):
def get_question(q_id): def get_question(q_id):
all_lines = [] all_lines = []
with open(../fragen_antworten.txt) as f: # The file is not in the same folder as the program file. Might not work, needs adjustment. with open("fragen_antworten.txt") as f: # The file is not in the same folder as the program file. Might not work, needs adjustment.
for line in f: for line in f:
q_and_a = line.split(|) # Question_and_Answer q_and_a = line.split("|") # Question_and_Answer
all_lines.append(q_and_a) all_lines.append(q_and_a)
return all_lines([q_id][0],[q_id][1]) #[q_id][0] is the question, [q_id][1] is the answer return all_lines([q_id][0],[q_id][1]) #[q_id][0] is the question, [q_id][1] is the answer
@bot.command()
async def debug(ctx):
for i in users:
await ctx.send(f"Question:{i.id}, Name:{i.name}, Channel:{i.channel}")
return
@bot.command() @bot.command()
async def answer(ctx): async def answer(ctx):
@ -73,5 +97,10 @@ async def answer(ctx):
await current_user.channel.send(current_user.question) await current_user.channel.send(current_user.question)
return return
#initialization
bot.run("Nzg1MTkxODM3OTg3MzczMDg2.X80Q4g.bK_vMhhESanMOA78KxHfmJft2vk") users = []
loop = asyncio.get_event_loop()
loop.run_until_complete(initialize())
loop.close()

View File

@ -1,59 +1,59 @@
Zählen Sie die Arten von Plastiden mit ihren Aufgaben auf. Zählen Sie die Arten von Plastiden mit ihren Aufgaben auf.
| |
Proplastid (undifferenzierte Jugendform); Chloroplast (Photosynthese, Stärkespeicher, Biosynthese: Chlorophyll, Carotinoide, Fettsäuren, Purine, Pyrimidine, Nitrit- und Sulfatreduktion); Chromoplast (Herstellung und Speicherung von Pigmenten: rötliche Farben, Fettlösliche Pigmente); Leukoplasten (Speicherung von Ölen, Stärke (Amyloplast), Proteinen) Proplastid (undifferenzierte Jugendform); Chloroplast (Photosynthese, Stärkespeicher, Biosynthese: Chlorophyll, Carotinoide, Fettsäuren, Purine, Pyrimidine, Nitrit- und Sulfatreduktion); Chromoplast (Herstellung und Speicherung von Pigmenten: rötliche Farben, Fettlösliche Pigmente); Leukoplasten (Speicherung von Ölen, Stärke (Amyloplast), Proteinen)
Welche Vorgänge geschehen im Zellkern? Welche Vorgänge geschehen im Zellkern?
| |
Ort der: DNA-Replikation, Transkription, genetischen Kontrolle, Ribosomensynthese. Ort der: DNA-Replikation, Transkription, genetischen Kontrolle, Ribosomensynthese.
Was ist das Spleißen? Was ist das Spleißen?
| |
Von einer fertig transkribierten mRNA werden, die Introns herausgeschnitten. Übrig bleiben die Exons, die Translatiert werden. Von einer fertig transkribierten mRNA werden, die Introns herausgeschnitten. Übrig bleiben die Exons, die Translatiert werden.
Welche Substanzen werden für die Transkription benötigt? Welche Substanzen werden für die Transkription benötigt?
| |
Substrat: Ribonukleosid-Triphosphate; Enzym: RNA-Polymerase; 'Matrize': DNA; weitere Proteine (Faktoren). Substrat: Ribonukleosid-Triphosphate; Enzym: RNA-Polymerase; 'Matrize': DNA; weitere Proteine (Faktoren).
Aus welchen Bestandteilen besteht ein eukaryotisches Ribosom? Aus welchen Bestandteilen besteht ein eukaryotisches Ribosom?
| |
Kleine Untereinheit: rRNA + Proteine = 40S; Große Untereinheit: 3rRNA + Proteine = 60S. Kleine Untereinheit: rRNA + Proteine = 40S; Große Untereinheit: 3rRNA + Proteine = 60S.
Wie faltet ein Protein korrekt? Wie faltet ein Protein korrekt?
| |
Manche von alleine (z.B. Mikrotubuli); Andere benötigen dafür Chaperone (class II). Manche von alleine (z.B. Mikrotubuli); Andere benötigen dafür Chaperone (class II).
Welche Zyklen kann eine Zelle durchgehen? Welche Zyklen kann eine Zelle durchgehen?
| |
Interphase: G1-Phase (differenzierte Zelle), S-Phase (Replikation der DNA), G2-Phase (Vorbereitung für die Teilung, Genregulation, Untersuchung auf Mutationen und Fehler in der DNA), Mitose-Phase (Teilung der Zelle). Interphase: G1-Phase (differenzierte Zelle), S-Phase (Replikation der DNA), G2-Phase (Vorbereitung für die Teilung, Genregulation, Untersuchung auf Mutationen und Fehler in der DNA), Mitose-Phase (Teilung der Zelle).
Welche Enzyme werden für die DNA-Synthese benötigt? Welche Enzyme werden für die DNA-Synthese benötigt?
| |
Topoisomerase (Aufwinden der Helix), Helicase (Trennung der Wasserstoffbrückenbindungen), DNA-Polymerase (Bildung des neuen Stranges), Primase (Anbindung von RNA-Primer), Nuklease/RNase (Trennung der RNA-Primer), DNA-Ligase (Verbindung der Okazaki-Fragmente). Topoisomerase (Aufwinden der Helix), Helicase (Trennung der Wasserstoffbrückenbindungen), DNA-Polymerase (Bildung des neuen Stranges), Primase (Anbindung von RNA-Primer), Nuklease/RNase (Trennung der RNA-Primer), DNA-Ligase (Verbindung der Okazaki-Fragmente).
Welche vier Nukleotide kommen in der DNA vor? Welche vier Nukleotide kommen in der DNA vor?
| |
Adenosin, Thymin, Guanin, Cytosin. Adenosin, Thymin, Guanin, Cytosin.
Nennen Sie drei Hauptkomponenten des Cytoskeletts. Nennen Sie drei Hauptkomponenten des Cytoskeletts.
| |
Aktinfilamente, Intermediärfilamente, Mikrotubuli. Aktinfilamente, Intermediärfilamente, Mikrotubuli.
Aus welchen Organen bestehen die Kormophyten? Aus welchen Organen bestehen die Kormophyten?
| |
Wurzel, Spross, Blätter. Wurzel, Spross, Blätter.
Wozu dienen pflanzliche Vakuolen? Wozu dienen pflanzliche Vakuolen?
| |
Struktur (Turgor), Speicherung (wasserlösliche Pigmente, Proteine, Ionen, org. Verbindungen, Stoffwechselbeiprodukte), Schutz davor gegessen zu werden durch Einlagerung von Gift- und Bitterstoffen, Verdauung, Bewegungsvorgänge (z.B. Stomata). Struktur (Turgor), Speicherung (wasserlösliche Pigmente, Proteine, Ionen, org. Verbindungen, Stoffwechselbeiprodukte), Schutz davor gegessen zu werden durch Einlagerung von Gift- und Bitterstoffen, Verdauung, Bewegungsvorgänge (z.B. Stomata).
Im Bast der Linde kommen Hart- und Weichbast vor. Welcher Bastteil enthält die Assimilate-leitenden Elemente und wie heißen diese? Im Bast der Linde kommen Hart- und Weichbast vor. Welcher Bastteil enthält die Assimilate-leitenden Elemente und wie heißen diese?
| |
Weichbast, leitende Elemente sind Siebröhrenzellen mit Geleitzellen. Weichbast, leitende Elemente sind Siebröhrenzellen mit Geleitzellen.
Welche Gewebe befinden sich in einem bifazialen Laubblattes? Welche Gewebe befinden sich in einem bifazialen Laubblattes?
| |
Von Oben: Obere Epidermis mit Cuticula, Palisadenparenchym, Schwammparenchym mit Interzellulare, Leitgewebe aus Phloem und Xylem, Untere Epidermis mit Cuticula und Stomata. Von Oben: Obere Epidermis mit Cuticula, Palisadenparenchym, Schwammparenchym mit Interzellulare, Leitgewebe aus Phloem und Xylem, Untere Epidermis mit Cuticula und Stomata.
Wie sind die Zellwände bei Pflanzlichen Zellen aufgebaut? Wie sind die Zellwände bei Pflanzlichen Zellen aufgebaut?
| |
Ganz Außen: Primäre Zellwand, weiter Innen: Sekundäre Zellwand, weiter Innen: Tertiäre Zellwand, zwischen zwei pri. Zellwänden von zwei Zellen liegt die Mittellamelle.|Primäre Zellwand: Entsteht aus Vesikeln aus beiden Golgi-Apparaten; Vesikel enthalten Polysaccharide (D-Galactursäure) Pektin und Protopektin (Pektin hat methylierte Carboxygruppe; Protopektin hat eine freie Carboxygruppe (geladen)). Ionenbindung hölt die Ketten von Monomeren zusammen. Wenn die Mittellamelle fertig ist kommen neue Art von Golgi-Vesikeln zu der Mittellamelle. Dadurch bildet sich die Primärzwellwand. ... Ganz Außen: Primäre Zellwand, weiter Innen: Sekundäre Zellwand, weiter Innen: Tertiäre Zellwand, zwischen zwei pri. Zellwänden von zwei Zellen liegt die Mittellamelle.|Primäre Zellwand: Entsteht aus Vesikeln aus beiden Golgi-Apparaten; Vesikel enthalten Polysaccharide (D-Galactursäure) Pektin und Protopektin (Pektin hat methylierte Carboxygruppe; Protopektin hat eine freie Carboxygruppe (geladen)). Ionenbindung hölt die Ketten von Monomeren zusammen. Wenn die Mittellamelle fertig ist kommen neue Art von Golgi-Vesikeln zu der Mittellamelle. Dadurch bildet sich die Primärzwellwand. ...

1
Jan/users.txt Normal file
View File

@ -0,0 +1 @@
0|383652565931393029|Direct Message with Muscovy#1562