Directory Creation with Time, Hashing, and Factorial Calculation

  • Share this:

Code introduction


This function creates a directory if it does not exist, prints the current time, generates a random string, hashes the string using the MD5 algorithm, calculates the factorial of a given number, and saves the results to a JSON file.


Technology Stack : os, sys, random, json, time, datetime, hashlib, math

Code Type : Function

Code Difficulty : Intermediate


                
                    
import os
import sys
import random
import json
import time
import datetime
import hashlib
import math

def generate_random_string(length=10):
    return ''.join(random.choices('abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789', k=length))

def xxx(arg1, arg2, arg3):
    # 创建一个目录,如果不存在的话
    os.makedirs(arg1, exist_ok=True)
    
    # 打印系统当前时间
    print(datetime.datetime.now())
    
    # 生成一个随机字符串
    random_string = generate_random_string(arg2)
    
    # 使用MD5哈希算法对字符串进行哈希
    hash_object = hashlib.md5(random_string.encode())
    hex_dig = hash_object.hexdigest()
    
    # 计算给定数字的阶乘
    factorial = math.factorial(arg3)
    
    # 将结果保存到JSON文件中
    result = {
        "random_string": random_string,
        "hash": hex_dig,
        "factorial": factorial
    }
    with open(os.path.join(arg1, "result.json"), "w") as json_file:
        json.dump(result, json_file)