擅长:python、mysql、java
<p>这是我的解决方案:</p>
<pre><code>import re
from os.path import exists
def calculate(path: str):
pattern_digit = re.compile(r"\d")
pattern_alpha = re.compile(r"[A-Za-z]")
digits = []
alphas = []
if exists(path):
try:
with open(path) as file:
string = file.read()
listed_str = string.splitlines()
for emp_str in listed_str:
if emp_str == '':
listed_str.remove(emp_str)
for number in range(len(listed_str)):
digits.append(sum([int(n) for n in pattern_digit.findall(listed_str[number])]))
for alphabet in range(len(listed_str)):
alphas.append(''.join(pattern_alpha.findall(listed_str[alphabet])))
except FileNotFoundError:
return "No such file or directory found"
for p in range(len(alphas)):
print(f"{alphas[p]} {digits[p] / len(digits)}")
</code></pre>
<p><strong>我知道这有点复杂,但我保证它会按照您的要求工作。</strong></p>