Как создать структуры в python, как мы можем в Visual Basi c? - PullRequest
0 голосов
/ 06 марта 2020

Например, мы можем создать структуру:

Structure Student
    Dim id As Integer
    Dim name As String
    Dim DoB As Date
End Structure

И позже мы можем объявить переменные в этой структуре, как если бы это был тип данных и входные значения для полей.

Sub Main()
    Dim a(4) As Student
    For i = 1 to 5
    Console.Write("Enter name of student no." & i & ": ")
    a(i).name = Console.ReadLine()
    Console.Write("Enter id of student no." & i & ": ")
    a(i).id = Console.ReadLine()
    Console.Write("Enter Date of Birth of student no." & i & ": ")
    a(i).DoB = Console.ReadLine()
    Console.WriteLine()
    Next i
    Console.WriteLine("Student ID    Student Name    Student Date of Birth")
    For i = 1 to 5 
    Console.WriteLine(a(i).ID & "            " & a.(i).Name & "     " & a(i).DoB)
    Console.ReadKey()
End Sub()

Как мы можем сделать что-то подобное в python?

Ответы [ 2 ]

0 голосов
/ 06 марта 2020

Python 3 классы данных - это менее подробная версия стандартного python класса, в котором, как и в обычном Python классе, могут быть функции.

import datetime
from dataclasses import dataclass

@dataclass
class Student:
    id: int = 0 # '= 0' implies default value, if not supplied with 's'
    name: str
    dob: datetime.datetime

s = Student(id=1, name="A name" dob=datetime.datetime(2020, 3, 6))
print(s) # Student(id=1, name='A name', dob=datetime.datetime(2020, 3, 6, 0,0))
0 голосов
/ 06 марта 2020

Вы можете использовать классы

class student():
    def __init__(self,id,name,dob):
        self.id = id
        self.name = name
        self.dob = dob

    def __str__(self):
        return """
        id: {0} 
        name: {1} 
        dob: {2}
        """.format(self.id,self.name,self.dob)


import datetime
dob = datetime.datetime(1997, 1, 18)

can = student(150,"can",dob)

print(can)

python классы

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...