I'd love to get a review of my code, which I've already submitted as homework. I'd like some guidance as to how to write it more DRY-ly: I wrote the whole `round`, `sqrt` and exponentiation twice — how could I write it only once? Ideally I'd want to do it within the same function, it'd be a little ugly to write a function like `cube_then_sqrt_then_round_to_2dp(number)`

P.S. The variables are intentionally camelCase, I'm aware this is against the recommendations of PEP8

```
# Created Date: 2022-09-6 17:18:00+08:00
# version ='1.0.0'

import math

# generate_sequences function is used to print a sequence of values rounded to two decimal places starting from the
# start value till it's less than or equal to the maxValue. The sequence is value_n = sqrt(value_(n-1) ^ 3)
# Inputs
#   start (int) - the starting value of the sequence
#   maxValue (int) - the largest value that can be included in the sequence
# Return
#   sequence (list) - a list containing the values of the sequence
def generate_sequence(start, maxValue):
    if type(start) != int or type(maxValue) != int or (not (1 <= start <= 20)) or (not (100000 <= maxValue <= 6000000)):
        return None

    precision = 2
    exponent = 3
    sequence = [round(math.sqrt(start ** exponent), precision)]

    while (currentValue := round(math.sqrt(sequence[-1] ** exponent), precision)) <= maxValue:
        sequence.append(currentValue)

    return sequence

# Test code
print(generate_sequence(2, 6000000))  # Replace value as required for testing

```

Expected output:

> 
> [2.83, 4.76, 10.39, 33.49, 193.81, 2698.14, 140151.17]
> 
> 
>