Initial commit: Python learning project with examples and exercises
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
#7.1.2
|
||||
def r(filename): #获取数据
|
||||
with open(filename, 'r') as f:
|
||||
return list(map(float, f.read().split()))
|
||||
|
||||
def a(x): #平均值
|
||||
average_x = sum(x)/len(x)
|
||||
return "平均值:{:.0f}".format(average_x)
|
||||
|
||||
def f(x): #标准差
|
||||
import numpy
|
||||
list2_f = numpy.var(x) #numpy库的标准差公式
|
||||
return "标准差:{:.0f}".format(list2_f)
|
||||
|
||||
def z(x): #中位数
|
||||
y = x
|
||||
length = len(y)
|
||||
sorted_nums = sorted(y)
|
||||
mid = length // 2
|
||||
|
||||
if length % 2:
|
||||
result = sorted_nums[mid]
|
||||
else:
|
||||
left = sorted_nums[mid - 1]
|
||||
right = sorted_nums[mid]
|
||||
result = (left + right) / 2
|
||||
return f"中位数:{round(result)}"
|
||||
|
||||
|
||||
nums = r('nums.txt') #文件地址
|
||||
print(nums)
|
||||
nums_p = a(nums)
|
||||
print(nums_p)
|
||||
nums_b = f(nums)
|
||||
print(nums_b)
|
||||
nums_z = z(nums)
|
||||
print(nums_z)
|
||||
|
||||
|
||||
with open('new_nums.txt', 'w', encoding='utf-8') as new_nums:
|
||||
new_nums.write(nums_p + "\n")
|
||||
new_nums.write(nums_b + "\n")
|
||||
new_nums.write(nums_z + "\n")
|
||||
sorted_str = "排序后:" + " ".join(map(str, sorted(nums)))
|
||||
new_nums.write(sorted_str + "\n")
|
||||
Reference in New Issue
Block a user