Skip to content

Instantly share code, notes, and snippets.

View timrprobocom's full-sized avatar

Tim Roberts timrprobocom

  • Providenza & Boekelheide
  • Tigard, Oregon
View GitHub Profile
@timrprobocom
timrprobocom / mean_example.py
Created November 8, 2024 04:41
Example translating matlab to Python.
import cv2
import numpy as np
img1 = cv2.imread('NewCuyama.jpg')
img = cv2.cvtColor(img1, cv2.COLOR_BGR2GRAY)
# img is now a numpy array.
# Find the mean of all non-zero pixels.
@timrprobocom
timrprobocom / so_example1.html
Created November 3, 2024 00:10
Demonstration for a StackOverflow Question
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script>
<script>
'use strict';
var x = "0";
var y = "1";
var answer = parseInt(x);
@timrprobocom
timrprobocom / calculator.py
Created July 14, 2024 00:06
Calculator fixed
import tkinter as tk
class Calculator:
def __init__(self, master):
self.master = master
master.title("Calculator")
# Create display
self.display = tk.Entry(master, width=35, borderwidth=5, font=('Arial', 16))
self.display.grid(row=0, column=0, columnspan=4, padx=10, pady=10)
import random
def display_board(board):
print(board[0] + "|" + board[1] + "|" + board[2])
print("------")
print(board[3] + "|" + board[4] + "|" + board[5])
print("------")
print(board[6] + "|" + board[7] + "|" + board[8])
def player_input(first_move):
@timrprobocom
timrprobocom / untangle.py
Created August 19, 2023 00:27
Untangle improperly sorted columns
lines = """\
ABCDE12345_001,FGHIJ6789_002,ABCDE12345_001
KLMNO5432_003,KLMNO5432_003,FGHIJ6789_002
PQRST24680_123,UVWXY13579_555,UVWXY13579_555
ZABCD876530_009,ZABCD876530_009,AABBCCDDEE_987
AABBCCDDEE_987,AABBCCDDEE_987,LMNOP98765_999
LMNOP98765_999,ZYXWV54321_777,ZYXWV54321_777""".splitlines()
record = []
for row in lines:
import numpy as np
from datetime import datetime
# Define the component prices for each day
prices = {
datetime(2020, 1, 31): [197.2525, 253.2126, 653.266, 653.2678],
datetime(2020, 2, 3): [197.063, 253.2231, 652.3695, 652.3759],
datetime(2020, 2, 4): [196.6896, 252.9168, 649.9793, 649.9858],
datetime(2020, 2, 5): [197.3429, 252.8294, 653.5655, 653.5588],
datetime(2020, 2, 6): [197.4554, 252.7901, 652.3171, 652.3172],
@timrprobocom
timrprobocom / waterflow.py
Created December 18, 2022 06:38
Checking for water flow through a block
def physics(data):
block = [[int(i) for i in row.split(',')] for row in data.split(';')]
width = len(block[0])
height = len(block)
water = block[0].index(1)
for row in range(1,height):
for possible in (-1,0,1):
if water+possible in range(width) and block[row][water+possible]:
water += possible
"""
This does what you are trying to do, but with all the extraneous code eliminated.
Notice that strings are iterables, just like lists. Any time you are making a list
of single characters, you should probably use a string. Also notice that we write
`'xxx'.upper()`, not `str.upper('xxx')`. Also note that it is silly to write `
if result='N': pass`. Just test for what you want to know.
"""
import random
lower_case_letters = 'abcdefghijklmnopqrstuvwxyz'
import struct
# Return a RIFF file
class LIST:
def __init__(self, name, f):
# contains a type and a list of subchunks.
self.offset = f.tell() - 4
self.name = name.decode()
size = struct.unpack('I', f.read(4))[0]
@timrprobocom
timrprobocom / dbtest.py
Created March 10, 2022 05:27
Sample Database Benchmark
# OK, I ran the following Python to create the database:
import sqlite3
import random
import os
os.remove( 'test.db' )
db = sqlite3.connect( "test.db" )
cursor = db.cursor()
cursor.execute( """\