我正在参加「掘金·启航计划」
最近在学习python,如何快速提高所学编程和加深印象呢 很显然,通过多练习和尝试编写代码实现功能
- 主要知识点列表 | 编号 | 语言或插件 | 知识点 | 说明 | | --- | --- | --- | --- | | 1 | python | %s | 字符出输出标识 | | 2 | python | 逻辑判断 | if-elif,python这个elif写法挺特别,一般都是else if,直接简写成了elif | | 3 | python | def | 定义方法关键词 | | 4 | python | open | 操作txt文档 |
【判断素数编程】
- 编程要求如下
判断用户输入数字是否为素数,并将用户的输入写入a.txt,如果用户输入的是素数,是则将数字写入b.txt。
(素数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数)
- 分析题目
1)素数概念
大于1的自然数,除了1和它本身不能被其他数整数
2)循环遍历遍历,从1到数字的一般,判断是否能被整数,如果都不能被整数,说明是素数
- open函数,参数(扩展名,model=模式) | 编号 | 模式 | 说明 | | --- | --- | --- | | 1 | w | write,只能操作写入,会覆盖原来的数据 | | 2 | r | read,只能读取 | | 3 | a | append,向文件追加 | | 4 | w+/r+ | 可读可写 | | 5 | a+ | 可读可追加 | | 6 | wb+ | 写入数据 |
#!/usr/bin/python3
# -*- coding: utf-8 -*-
# 2022.06.15 14:34
import sys
while True:
print('请输入一个数字:')
value = int(input())
arr=[]
if value > 1:
for v in range(int(value / 2)):
if value % (v + 1) == 0 and v > 0:
arr.append(v + 1)
print('能被整数的值:%s' % arr)
if len(arr) <=0:
txt=open('b.txt',mode='a')
txt.writelines(str(value)+"\n")
print('数字:%s,是素数' % value)
else:
txt=open('a.txt',mode='a')
txt.writelines(str(value)+"\n")
print('数字:%s,不是素数' % value)
print('\r\n')
【计算等差级数编程】
- 编程要求如下
编写函数,计算等差级数1+2+3+4…..+n的值(其中,n由用户输入)。要求:将输入的数值n和计算的结果保存在jishu.txt文件中,保存格式如下:
级数:(此处写入用户输入的数据)和:(此处写所求结果)
- 分析题目 有题目可知道,此处使用推导公式:(n + 1) * n / 2
#!/usr/bin/python3
# -*- coding: utf-8 -*-
# 2022.06.15 14:34
import sys
while True:
print('请输入一个数字:')
n = int(input())
v = int((n + 1) * n / 2)
print('(%s+1)*%s/2=%s' % (n,n,str(v)))
txt=open('jisuan.txt',mode='a')
txt.writelines("级数:%s\n" % n)
txt.writelines("和:%s\n" % str(v))
# 验证结果
str_value = ''
total = 0
for i in range(n):
total+=(i + 1)
str_value+=str(i + 1) + '+'
print("%s=%s\n" % (str_value.rstrip('+'),total))