Когда я выбираю объект из словаря, он отображается с элементом (Name='Водород', Символ='H', Atomic_Number=1, Atomic_weight=1,008, State='Газ (реактивный неметалл)', Melting_point= -259,1, Точка кипения=-252,76, Состояния_оксидации='±1', Electron_Configuration='1s¹', Atomic_radius=37, Electronegativity=2.18, Valance_electrons=1), затем под ним написано Элемент: Нет.
Можем ли мы удалить все лишние символы, такие как кавычки , а Элемент в начале и конце? Еще хотелось бы отметить, можно ли избавиться от def show(): или мне это нужно в зависимости от того, как настроен мой код.
Вот мой код. Элементы — это имя словаря.
from dataclasses import dataclass
def gs(x):
normal = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-=()"
super_s = "ᴬᴮᶜᴰᴱᶠᴳᴴᴵᴶᴷᴸᴹᴺᴼᴾQᴿˢᵀᵁⱽᵂˣʸᶻᵃᵇᶜᵈᵉᶠᵍʰᶦʲᵏˡᵐⁿᵒᵖ۹ʳˢᵗᵘᵛʷˣʸᶻ⁰¹²³⁴⁵⁶⁷⁸⁹⁺⁻⁼⁽⁾"
res1 = x.maketrans(''.join(normal),''.join(super_s))
return x.translate(res1)
@dataclass
class Element():
Name: str
Symbol: str
Atomic_Number: int #atomic number
Atomic_weight: float
State: str #metal, metalloid, gas or unknown at 0C and Classification
Melting_point: float #melting point
Boiling_point: float #boiling point
Oxidation_states: str #oxidation States (charges)
Electron_Configuration: str #electron Configuration
Atomic_radius: int
Electronegativity: float
Valance_electrons: int
def show(Name):
print(Name)
elements = {
'hydrogen': Element('Hydrogen', 'H', 1, 1.008, 'Gas (Reactive nonmetal)',-259.1, -252.76, '±1', '1s{}'.format(gs('1')), 37, 2.18, 1),
}
while True:
selection = input("Select the element by name: ")
if selection in elements:
print(f"Element: {elements[selection].show()}")
elif 'h' in selection:
hc = input("Please select the number that corresponds to your problem: \n1. Don't know how to spell the element \n2. Info is incorrect \n3. Cancel \n")
if '1' in hc:
print("Filler")
elif '2' in hc:
print("Please go to this google forms to report problem \n(Link)")
elif '3' in hc:
continue
else:
print("Element not found \nType if you need help type 'h'")
Подробнее здесь: https://stackoverflow.com/questions/792 ... dictionary
Избавление от избыточных символов после вызова объекта из словаря Python ⇐ Python
Программы на Python
1732656923
Anonymous
Когда я выбираю объект из словаря, он отображается с элементом (Name='Водород', Символ='H', Atomic_Number=1, Atomic_weight=1,008, State='Газ (реактивный неметалл)', Melting_point= -259,1, Точка кипения=-252,76, Состояния_оксидации='±1', Electron_Configuration='1s¹', Atomic_radius=37, Electronegativity=2.18, Valance_electrons=1), затем под ним написано Элемент: Нет.
Можем ли мы удалить все лишние символы, такие как кавычки , а Элемент в начале и конце? Еще хотелось бы отметить, можно ли избавиться от def show(): или мне это нужно в зависимости от того, как настроен мой код.
Вот мой код. Элементы — это имя словаря.
from dataclasses import dataclass
def gs(x):
normal = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-=()"
super_s = "ᴬᴮᶜᴰᴱᶠᴳᴴᴵᴶᴷᴸᴹᴺᴼᴾQᴿˢᵀᵁⱽᵂˣʸᶻᵃᵇᶜᵈᵉᶠᵍʰᶦʲᵏˡᵐⁿᵒᵖ۹ʳˢᵗᵘᵛʷˣʸᶻ⁰¹²³⁴⁵⁶⁷⁸⁹⁺⁻⁼⁽⁾"
res1 = x.maketrans(''.join(normal),''.join(super_s))
return x.translate(res1)
@dataclass
class Element():
Name: str
Symbol: str
Atomic_Number: int #atomic number
Atomic_weight: float
State: str #metal, metalloid, gas or unknown at 0C and Classification
Melting_point: float #melting point
Boiling_point: float #boiling point
Oxidation_states: str #oxidation States (charges)
Electron_Configuration: str #electron Configuration
Atomic_radius: int
Electronegativity: float
Valance_electrons: int
def show(Name):
print(Name)
elements = {
'hydrogen': Element('Hydrogen', 'H', 1, 1.008, 'Gas (Reactive nonmetal)',-259.1, -252.76, '±1', '1s{}'.format(gs('1')), 37, 2.18, 1),
}
while True:
selection = input("Select the element by name: ")
if selection in elements:
print(f"Element: {elements[selection].show()}")
elif 'h' in selection:
hc = input("Please select the number that corresponds to your problem: \n1. Don't know how to spell the element \n2. Info is incorrect \n3. Cancel \n")
if '1' in hc:
print("Filler")
elif '2' in hc:
print("Please go to this google forms to report problem \n(Link)")
elif '3' in hc:
continue
else:
print("Element not found \nType if you need help type 'h'")
Подробнее здесь: [url]https://stackoverflow.com/questions/79213166/getting-rid-of-redundant-symbols-after-calling-object-from-python-dictionary[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия