import React from 'react';
import { StyleSheet, Text, View, Button } from 'react-native';
getStyles = (currentTheme) => {
const colors = {
light: {
backgroundColor: "white",
colorText: "black",
},
dark: {
backgroundColor: "black",
colorText: "white",
},
};
return StyleSheet.create({
container: {
flex: 1,
backgroundColor: colors[currentTheme].backgroundColor,
alignItems: 'center',
justifyContent: 'center',
},
text: {
color: colors[currentTheme].colorText
}
})
};
export default class App extends React.Component {
constructor(props){
super(props);
this.state = { currentTheme: 'light' }
}
changeTheme = () => {
this.setState(prevState => ({
currentTheme: prevState.currentTheme === 'light'
? 'dark'
: 'light'
}))
}
render() {
const { currentTheme } = this.state;
const styles = getStyles(currentTheme);
return (
<View style={styles.container}>
<Text style={styles.text}>Open up App.js to start working on your app!</Text>
<Text style={styles.text}>Changes you make will automatically reload.</Text>
<Text style={styles.text}>Shake your phone to open the developer menu.</Text>
<Button title="HELLO" onPress={this.changeTheme} />
</View>
);
}
}
texts = TextsSerializer(many=True, read_only=True)
texts = TextsSerializer(source='texts_of_page', read_only=True)
texts_of_page = models.ForeignKey(Page, on_delete=models.CASCADE, related_name='texts')
texts = TextsSerializer(many=True, read_only=True)
class PageAdminForm(forms.ModelForm):
class Meta:
model = Page
def clean(self):
if not list(filter(None, self.data.values())):
msg = 'Не заполнено ни одно поле'
self.add_error(None, msg)
class PageAdmin(admin.ModelAdmin):
form = PageAdminForm
fields = []
inlines = [PageInline_Text, PageInline_Audio, PageInline_Video]
import time
from threading import Thread
run = True
def ticker():
while run:
time.sleep(1)
print('Тик')
time.sleep(1)
print('Так')
# Запуск функции ticker в отдельном потоке.
# Параметр daemon=True нужен чтобы
# дочерний поток умирал вместе с основным
# в случае внештатного выхода.
Thread(target=ticker, daemon=True).start()
while run:
command = input('Для выхода введите "exit"\n')
if command.lower() == 'exit':
run = False
import asyncio
import signal
def shutdown():
# Отменяем все задачи, кроме вызвавшей
for task in asyncio.Task.all_tasks():
if task is not asyncio.tasks.Task.current_task():
task.cancel()
async def user_io():
loop = asyncio.get_event_loop()
# Ждём действия от пользователя
while True:
# Запускаем input() в отдельном потоке и ждём его завершения
command = await loop.run_in_executor(None, input, 'Для выхода введите "exit"\n')
if command.lower() == 'exit':
shutdown() # Отменяем все задачи
break # и выходим из цикла
# Сопрограмма, выполняемая параллельно с ожиданием пользовательского ввода
async def task_manager():
counter = 0
while True:
try:
await asyncio.sleep(1)
except asyncio.CancelledError:
break # Выходим из цикла, если задачу отменили
counter += 1
print("I'm a task manager {}!".format(counter))
if __name__ == '__main__':
# Устанавливаем обработчик Ctrl+C
signal.signal(signal.SIGINT, lambda n, f: shutdown())
# Запускаем цикл событий
loop = asyncio.get_event_loop()
# Задача ждущая завершения сопрограм user_io и task_manager
main_task = asyncio.wait([user_io(), task_manager()])
try:
loop.run_until_complete(main_task)
except asyncio.CancelledError:
# Позволяем main_task завершиться
loop.run_until_complete(main_task)
loop.close()
print('Мергалиева Магомеда Ихтияр оглы'.split(maxsplit=2))
import cx_Oracle
import xml.etree.ElementTree as ET
tree = ET.parse(filexml)
element_xml_root = tree.getroot()
db = cx_Oracle.connect("SYSTEM", "1234567890", "localhost/ORCL")
dbcur = db.cursor()
query_pac = dbcur.prepare('INSERT INTO pac_table (idpac, fam, im, ot)'
' VALUES (:idpac, : fam, : im, : ot)')
query_usl = dbcur.prepare('INSERT INTO usl_table (idpac, code_usl, date_usl, price_usl)'
' VALUES (:idpac, : code_usl, : date_usl, : price_usl)')
for elem in element_xml_root.findall('ZAP'):
idpac = elem.find('ID_PAC').text
fam = elem.find('FAM').text
im = elem.find('IM') .text
ot = elem.find('OT') .text
dbcur.execute(query_pac, (idpac, fam, im, ot))
for data in elem.findall('DATA'):
code_usl = data.find('CODE') .text
date_usl = data.find('DATE') .text
price_usl = data.find('PRICE') .text
dbcur.execute(query_usl, (idpac, code_usl, date_usl, price_usl))
db.commit()
dbcur.close()
sudo apt install screen
screen -S mybot
python3 bot.py
screen -r mybot
- чтобы открыть при следующем входе