Informatik – die neusten Beiträge

Abgerundete Ecken CSS sind abgeschnitten (Grid-Box)?

Hallo,

ich hab erst vor angefangen HTML und CSS zu lernen und bin jetzt auf folgendes Problem gestoßen:

Ich möchte eine Webseite via CSS-Grid aufteilen und die Boxen jeweils abrunden. Allerdings werden manche Ecken immer abgeschnitten und ich finde nicht den Fehler an was das liegen könnte (siehe Screenshot, ecken rot Markiert). Hier der Code den ich bis jetzt verwende:

.gridbox{
  overflow: hidden;
  width: 99%;
  height: 99%;
  display: grid;
  grid-template-columns: 25% 25% 25% 25%;
  grid-template-rows: 25% 25% 25% 25%;
  grid-template-areas:
      "nav nav nav nav"
      "sidebar main main main"
      "sidebar content1 content2 content3"
      "sidebar footer footer footer";
  grid-gap: 0.4rem;
  border-radius: 1rem;
}

#nav {
  background: #a7ffeb;
  grid-area: nav;
  border-radius: 1rem;
}

#sidebar{
  background: #18ffff;
  grid-area: sidebar;
  border-radius: 1rem;
}


#main {
  background: #84ffff;
  grid-area: main;
  border-radius: 1rem;
}


#content1 {
  background: #6fffd2;
  grid-area: content1;
  border-radius: 1rem;
}


#content2 {
  background: #64ffda;
  grid-area: content2;
  border-radius: 1rem;
}


#content3 {
  background: #73ffbb;
  grid-area: content3;
  border-radius: 1rem;
}


#footer {
  background-color: #1de9b6;
  grid-area: footer;
  border-radius: 1rem;
}

Soweit ich das verstanden habe, spricht man wenn man bei border-radius: 1px 2px 2px 1px; die Ecken einzeln an und bei border-radius: 1rem; alle Ecken.

Danke für Antworten :D

Bild zum Beitrag
Computer, Technik, HTML, Webseite, CSS, Informatik

Python Error: [WinError 6] Das Handle ist ungültig fixen?

Moin seit kurzem funktioniert

sys.exit()

bei mir in Python nicht mehr.

Das Programm schließt sich aber es erscheint eine Fehlermeldung

FELHER:

Cancelling an overlapped future failed

future: <_OverlappedFuture pending overlapped=<pending, 0x2ea7a20> cb=[BaseProactorEventLoop._loop_self_reading()]>

Traceback (most recent call last):

 File "C:\Users\Anwender\AppData\Local\Programs\Python\Python38-32\lib\asyncio\runners.py", line 43, in run

  return loop.run_until_complete(main)

 File "C:\Users\Anwender\AppData\Local\Programs\Python\Python38-32\lib\asyncio\base_events.py", line 603, in run_until_complete

  self.run_forever()

 File "C:\Users\Anwender\AppData\Local\Programs\Python\Python38-32\lib\asyncio\windows_events.py", line 316, in run_forever

  super().run_forever()

 File "C:\Users\Anwender\AppData\Local\Programs\Python\Python38-32\lib\asyncio\base_events.py", line 570, in run_forever

  self._run_once()

 File "C:\Users\Anwender\AppData\Local\Programs\Python\Python38-32\lib\asyncio\base_events.py", line 1859, in _run_once

  handle._run()

 File "C:\Users\Anwender\AppData\Local\Programs\Python\Python38-32\lib\asyncio\events.py", line 81, in _run

  self._context.run(self._callback, *self._args)

 File "D:/Ruben/Projects/Python/Testing/main.py", line 15, in auswahlfenster

  await loginchecker()

 File "D:/Ruben/Projects/Python/Testing/main.py", line 36, in loginchecker

  raise SystemExit

SystemExit

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

 File "C:\Users\Anwender\AppData\Local\Programs\Python\Python38-32\lib\asyncio\windows_events.py", line 66, in _cancel_overlapped

  self._ov.cancel()

OSError: [WinError 6] Das Handle ist ungültig

DEF LOGINCHECKER:

Bild zum Beitrag
Computer, programmieren, Informatik, Python

Linux Home Userrechte ändern nicht möglich?

Hallo, ich habe ein Problem, das immer seltsamer wird.

Mein Homedirectory also ./ hat nur folgende rechte:

Also mit Ordnern, darf jeder alles machen, aber dateien kann niemand erstellen.
Möchte ich nun z. B. Virtualbox starten, geht dies nicht. Es kommen nur Fehlermeldungen.
Ich kann aber einfach Dateien via Rechtsklick erstellen.

Ich dachte, das einfachste wäre, mittels:

sudo chmod 777 ./ 

Die Nutzerrechte so zu vergeben, dass auch VirtualBox wieder seine Dateien schreiben kann.

Im Terminal bekomme ich keine fehlermeldung. Jedoch bewirkt zum Beispiel

chmod 666 nur, änderungen für Ordner. Ich dachte Dateien müsste das auch betreffen?

ls -l liefert mir:

user@pc:~$ ls -l ./
insgesamt 164
drwxrwxrwx 1 root   root   36864 Nov 6 10:28 Bilder
drwxrwxrwx 1 root   root   4096 Okt 31 17:58 Code
-rw-rw-r-- 1 user user   0 Nov 14 20:33 dfgsf~
drwxrwxrwx 1 root   root   8192 Nov 13 07:03 Dokumente
drwxrwxrwx 1 root   root   4096 Nov 12 15:01 Downloads
drwxrwxrwx 1 root   root   40960 Nov 8 11:05 Fotos
-rwxrwxrwx 1 user user   0 Jun 4 19:35 hash.txt~
drwxrwxrwx 1 root   root   4096 Nov 6 17:22 Musik
drwxrwxrwx 2 user user 4096 Nov 1 11:09 Öffentlich
drwxrwxrwx 1 root   root   32768 Nov 11 08:35 Programme
drwxrwxrwx 1 root   root   12288 Nov 3 13:22 Projekte
drwxrwxrwx 1 root   root   4096 Nov 8 08:48 RAWBackup
drwxrwxrwx 2 user user 4096 Nov 12 14:42 Schreibtisch
drwxrwxrwx 8 user user 4096 Nov 9 21:41 snap
drwxrwxrwx 1 root   root   4096 Nov 6 21:04 Videos
drwxrwxrwx 3 user user 4096 Okt 24 16:34 'VirtualBox VMs'
drwxrwxrwx 1 root   root     0 Okt 31 17:33 Vorlagen

Übrigens bekomme ich bei allen anderen Ordnern dieses zweite Feld nicht angezeigt. Da schaut es dann so aus:

Der unterschied auf den ersten Blick ist, dass hier Eigentümer und Gruppe "root" ist, anstatt der user.

Deswegen ändere ich im terminal:

sudo chown root:root ./

dies ändert aber auch nichts.

Hat jemand eine Idee, was da falsch gelaufen ist?

Vielen Dank schon mal für eure Antworten!

Bild zum Beitrag
PC, Computer, Technik, Linux, Ubuntu, Informatik, Linux Mint

Python | was ist hier falsch?

def open_file():

   my_text.delete("1.0", END)

   #get filename
   text_file = filedialog.askopenfilename(initialdir="C:/", title="Open File", filetyßes=(("Text Files", "*.txt")))

Ich habe ein Tutorial auf YouTube nachgemacht um einen Text Editor zu erstellen.

Ich bin momentan bei der Funktion um Datein zu öffnen.

Also funktioniert bisher, außer es kommt beim öffnen immer ein Fehler der aber laut dem Py Terminal diese Zeile ist

text_file = filedialog.askopenfilename(initialdir="C:/", title="Open File", filetypes=(("Text Files", "*.txt")))

Kann mir jemand sagen was an dieser Zeile falsch ist?

Hier mal den Console Log

Exception in Tkinter callback
Traceback (most recent call last):

File "C:\xyz\AppData\Local\Programs\Python\Python37\lib\tkinter\__init__.py", line 1705, in __call__
    return self.func(*args)

  File "C:\xyz\editor.py", line 16, in open_file
    text_file = filedialog.askopenfilename(initialdir="C:/Benutzer", title="Open File", filetypes=(("Text Files", "*.txt")))

)))
  File "C:\xyz\AppData\Local\Programs\Python\Python37\lib\tkinter\filedialog.py", line 375, in askopenfilename
    return Open(**options).show()
  File "C:\xyz\AppData\Local\Programs\Python\Python37\lib\tkinter\commondialog.py", line 43, in show
    s = w.tk.call(self.command, *w._options(self.options))
_tkinter.TclError: bad file type "*.txt", should be "typeName {extension ?extensions ...?} ?{macType ?macTypes ...?}?"


Computer, programmieren, Informatik, Python

Wie ist dieser verbesserte Python Code zu Palindromen?

Verbesserter Code mit Hilfe der Antwort von alfredo153

#!/bin/python3
#Palindrome-Woerter in Textdatei erkennen
import string

#Funktion zum Erkennen von Palindromen
def check_palindrome(word):
    reverse = ''
    removable = string.punctuation + string.whitespace + string.digits
    for c in removable: #Sonderzeichen entfernen
        word = word.replace(c, '')
    if word in string.punctuation or word in string.whitespace: #Sonderzeichen abfangen
        return False
    for c in word[::-1]: #Wort rueckwaerts zusammen basteln
        reverse = reverse + c
    if reverse.lower() == word.lower(): #Rueckwaerts-Wort mit vorwaerts-Wort vergleichen
        return True
    else:
        return False

#Den Benutzer eine Textdatei oeffnen lassen
file = input('Path to file: ')
palindrome = []

try:
    with open(file, 'r') as f:
        lines = f.readlines()
except FileNotFoundError:
    print('File not found!')
    exit(0)

#Einzelne Woerter im Text der Funktion check_palindrome uebergeben
for line in lines:
    line = line.split(' ')
    for word in line:
        if check_palindrome(word):
            palindrome.append(word)
        else:
            continue

#Ergebnis anzeigen
print(len(palindrome), ' found!\n')
for i in range(len(palindrome)):
    print(palindrome[i].replace('\n', '')) #\n in Wort entfernen, da sonst zu viele Leerzeichen bei Output
Computer, programmieren, Informatik, Python

Verbesserungsvorschläge für mein Python Skript: Polindrome finden?

Hey,

ich habe heute ein kleines Python Skript geschrieben, um Polindrome in einer Textdatei zu erkennen. Polindrome sind Wörter, die rückwärts geschrieben genau den gleichen Sinn ergeben wie vorwärts geschrieben.

#!/bin/python3
#Polindrome-Woerter in Textdatei erkennen
import string

#Funktion zum Erkennen von Polindromen
def check_polindrome(word):
    reverse = ''
    removable = ['\n', '\t', '\r']
    for c in removable: # Zeug entfernen
        word = word.replace(c, '')
    for c in string.punctuation: #Sonderzeichen entfernen
        word = word.replace(c, '')
    for c in string.whitespace: #Leerzeichen entfernen, da sonst falsche Ergebnisse entstehen
        word = word.replace(c, '')
    if word in string.punctuation or word in string.whitespace: #Leer- und Sonderzeichen abfangen
        return False
    if word.isdigit() == True: #Zahlen abfangen, da z.B. 121 rueckwaerts auch 121 ergibt
        return False
    for i in range(len(word)-1, 0-1, -1): #Wort rueckwaerts zusammen basteln
        reverse = reverse + word[i]
    if reverse.lower() == word.lower(): #Rueckwaerts-Wort mit vorwaerts-Wort vergleichen
        return True
    else:
        return False

#Den Benutzer eine Textdatei oeffnen lassen
file = input('Path to file: ')
polindrome = []

try:
    with open(file, 'r') as f:
        lines = f.readlines()
except FileNotFoundError:
    print('File not found!')
    exit(0)

#Einzelne Woerter im Text der Funktion check_polindrome uebergeben
for i in range(0, len(lines)):
    lines[i] = lines[i].split(' ')
    for word in lines[i]:
        if check_polindrome(word) == True:
            polindrome.append(word)
        else:
            continue

#Ergebnis anzeigen
print(len(polindrome), ' found!\n')
for i in range(len(polindrome)):
    print(polindrome[i].replace('\n', '')) #\n in Wort entfernen, da sonst zu viele Leerzeichen bei Output

Die Projektidee habe ich von: https://www.gutefrage.net/frage/python-projekt-ideen#answer-357880884

Wie man rückwärts über eine Zeichenkette rotiert, habe ich von: https://stackoverflow.com/questions/7961499/best-way-to-loop-over-a-python-string-backwards

  • Hat jemand Verbesserungsvorschläge für meinen Code?
  • Ein kleines Feedback bitte
Computer, programmieren, Informatik, Python

Frage zu CSV-Datei und Java?

Hallo zusammen,

kann mir jemand bei diesen Probleme helfen? Ich weiß wirklich nicht, wie ich da rangehen muss.

  1. Aufgabe ist, dass ich Anzahl der in der eingegeben CSV-Datei gespeicherten Personen bzw. Eintrage zurückgeben soll und zwar mit der Funktion public static int countCsvData_CSV_NUM (List csvData)
  2. public static List selectCsvDataByYear_CSV_NUM (List csvData, int selectedYear): diese Funktion (im Datenbankenkontext bekannt als Selektion) soll als Eingabe die Daten aus der CSV-Datei als Arrayliste bekommen (siehe ESL-0-Zettelserie Aufgabe 2.1) und ein konkretes Geburtsjahr. Setzen Sie voraus, dass das Geburtsjahr an dritter Stelle im Array steht. Die zurückgegebene Liste soll nur solche Arrays enthalten, deren Geburtsjahr-Attribut selectedYear entspricht.
  3. public static List> selectCsvDataByValue_CSV_ASSOC (List> csvData, String selectedKey, String selectedValue): Diese Selektions-Funktion soll nun flexibler sein. Diese Funktion arbeitet man hier mit den gemappten CSV-Daten. Dieses mal ist das Attribut nicht auf Geburtsjahr festgelegt, sondern kann durch den Funktionsbenutzer mit selectedKey bestimmt werden, der zu selektierende Wert mit selectedValue. In der zurückzugebenden Liste von Maps dürfen nur solche Maps enthalten sein, die das entsprechende Attribut besitzen und dessen Wert mit dem gewünschten Wert übereinstimmt. Natürlich sollte Ihre Funktion auch für jede andere CSV-Datei korrekt funktionieren und nicht unerwartet ohne Fehlermeldung abstürzen. 
  4. public static double avgCsvDataByTown_CSV_ASSOC (List> csvData, String selectedTown): Diese Funktion soll den Durchschnitt der Geburtsjahre aller Einwohner einer bestimmten Stadt zurückgeben. Die Stadt wird im Parameter selectedTown spezifiziert. Hat die gewählt Stadt keine Einwohner bzw. existiert diese nicht, soll 0 zurückgegeben werden. Wenn Geburtsjahre existieren, die nicht in einen gültigen Zahlenformat abgespeichert sind, soll -1 zurückgegeben werden.

Bild zum Beitrag
programmieren, Java, Informatik, CSV-Datei

Meistgelesene Beiträge zum Thema Informatik