update folders
This commit is contained in:
7
snipplets/code/Python/README.md
Normal file
7
snipplets/code/Python/README.md
Normal file
@ -0,0 +1,7 @@
|
||||
# Python
|
||||
|
||||
## std
|
||||
- [`os_env.py`](os_env.py) - Получение значений переменных окружения
|
||||
|
||||
## Stuff
|
||||
- [`irc-bot.py`](irc-bot.py) - Простой IRC бот на Python 3
|
26
snipplets/code/Python/Tk/select-file-folder.py
Normal file
26
snipplets/code/Python/Tk/select-file-folder.py
Normal file
@ -0,0 +1,26 @@
|
||||
from tkinter import filedialog
|
||||
from tkinter import *
|
||||
|
||||
root = Tk()
|
||||
root.withdraw()
|
||||
|
||||
def select_file():
|
||||
file_selected = filedialog.askopenfilename(
|
||||
title='Open a file',
|
||||
initialdir='/',
|
||||
filetypes=(
|
||||
('Text files', '*.txt'),
|
||||
('All files', '*.*')
|
||||
)
|
||||
)
|
||||
|
||||
print(file_selected)
|
||||
|
||||
def select_folder():
|
||||
folder_selected = filedialog.askdirectory()
|
||||
|
||||
print(folder_selected)
|
||||
|
||||
if __name__ == '__main__':
|
||||
select_file()
|
||||
select_folder()
|
18
snipplets/code/Python/array_methods.py
Normal file
18
snipplets/code/Python/array_methods.py
Normal file
@ -0,0 +1,18 @@
|
||||
array.typecode # TypeCode символ, использованный при создании массива.
|
||||
array.itemsize # размер в байтах одного элемента в массиве.
|
||||
array.append(х) # добавление элемента в конец массива.
|
||||
array.buffer_info() # кортеж (ячейка памяти, длина). Полезно для низкоуровневых операций.
|
||||
array.byteswap() # изменить порядок следования байтов в каждом элементе массива. Полезно при чтении данных из файла, написанного на машине с другим порядком байтов.
|
||||
array.count(х) # возвращает количество вхождений х в массив.
|
||||
array.extend(iter) # добавление элементов из объекта в массив.
|
||||
array.frombytes(b) # делает массив array из массива байт. Количество байт должно быть кратно размеру одного элемента в массиве.
|
||||
array.fromfile(F, N) # читает N элементов из файла и добавляет их в конец массива. Файл должен быть открыт на бинарное чтение. Если доступно меньше N элементов, генерируется исключение EOFError , но элементы, которые были доступны, добавляются в массив.
|
||||
array.fromlist(список) # добавление элементов из списка.
|
||||
array.index(х) # номер первого вхождения x в массив.
|
||||
array.insert(n, х) # включить новый пункт со значением х в массиве перед номером n. Отрицательные значения рассматриваются относительно конца массива.
|
||||
array.pop(i) # удаляет i-ый элемент из массива и возвращает его. По умолчанию удаляется последний элемент.
|
||||
array.remove(х) # удалить первое вхождение х из массива.
|
||||
array.reverse() # обратный порядок элементов в массиве.
|
||||
array.tobytes() # преобразование к байтам.
|
||||
array.tofile(f) # запись массива в открытый файл.
|
||||
array.tolist() # преобразование массива в список.
|
29
snipplets/code/Python/irc-bot.py
Executable file
29
snipplets/code/Python/irc-bot.py
Executable file
@ -0,0 +1,29 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import socket
|
||||
import time
|
||||
|
||||
server = 'iiiypuk.me'
|
||||
channel = '#admin'
|
||||
botnick = 'porteus'
|
||||
|
||||
irc = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||
print('Connecting to: ' + server)
|
||||
|
||||
irc.connect((server, 6667))
|
||||
irc.send(str.encode('USER ' + botnick + ' localhost localhost :This is a bot!\n'))
|
||||
irc.send(str.encode('NICK ' + botnick + '\n'))
|
||||
irc.send(str.encode('JOIN '+ channel +'\n'))
|
||||
|
||||
while True:
|
||||
text = irc.recv(2040)
|
||||
print(text)
|
||||
|
||||
if text.find(str.encode('PING')) != -1:
|
||||
irc.send(str.encode('PONG ' + str(text.split()[1]) + '\r\n'))
|
||||
|
||||
# !time - return current timestamp
|
||||
if text.find(str.encode('!time')) != -1:
|
||||
ts = time.time()
|
||||
irc.send(str.encode('PRIVMSG #admin :{}\r\n'.format(int(ts))))
|
||||
|
2
snipplets/code/Python/os_env.py
Normal file
2
snipplets/code/Python/os_env.py
Normal file
@ -0,0 +1,2 @@
|
||||
import os
|
||||
print(os.environ['HOME'])
|
Reference in New Issue
Block a user