python练习1-使用sublime text

Day1

sublime text:

ctrl + shift + p:控制
ctrl + N:创建文件
ctrl + B:运行文件
ctrl + S:保存文件
ctrl + F:快速查找
ctrl + 回车:跳跃至下一行
ctrl + 方向键:快速跳跃
shift + 方向键:快速选择
F5键:进入与python的交换界面(已经设置F5键后才管用的)

Day2、语言元素

1.代码:

a = 10
b = 3
a += b        # 相当于:a = a + b,13
a *= a + 2    # 相当于:a = a * (a + 2),13*15=195
print(a)      # 算一下这里会输出什么
flag0 = 1 == 1 # =为赋值符号,==为比较运算符
flag1 = 3 > 2  # (1 and 0) = 0,(1 or 0) = 1
flag2 = 2 < 1
flag3 = flag1 and flag2
flag4 = flag1 or flag2
flag5 = not (1 != 2)
print('flag0 =', flag0)    # flag0 = True
print('flag1 =', flag1)    # flag1 = True
print('flag2 =', flag2)    # flag2 = False
print('flag3 =', flag3)    # flag3 = False
print('flag4 =', flag4)    # flag4 = True
print('flag5 =', flag5)    # flag5 = False

#练习1:华氏温度转换为摄氏温度。C=(F - 32) \div 1.8
f = float(input('请输入华氏温度: '))
c = (f - 32)/1.8
print('%.1f华氏度 = %.1f摄氏度\n' %(f,c))

#练习2:输入圆的半径计算计算周长和面积。

r = float(input('请输入圆的半径: '))
l = 2 * 3.1416 * r
s = 3.1416 * r * r
print('半径:%.2f \n 周长:%.2f \n 面积:%.2f \n' %(r,l,s))

#练习3:输入年份判断是不是闰年。
year = int(input('请输入需要判断的年份: '))
if year % 4 == 0 and year % 100 != 0:
	print('%d是闰年\n' % year)
else:
	print('%d不是闰年\n' % year)

python练习1-使用sublime text_第1张图片
说明:练习2中判断闰年的公式是否正确不太记得了

2.实验结果:

python练习1-使用sublime text_第2张图片

Day3、分支结构

1.代码

#用户身份验证
username = input('请输入用户名:') 
password = input('请输入口令:')
if username == 'admin' and password =='123456':
	print('身份验证成功!\n')
else:
	print('身份验证失败!\n')


#分段函数求值
print('分段函数求值')
x = float(input('请输入x:')) 
if x > 1:
	y = 3 * x -5
elif x >= -1 and x <= 1:
	y = x + 2
else:
	y = 5 * x + 3
print('当x = %.2f时,y = %.2f\n' %(x,y)) #print('f(%.2f) = %.2f' % (x,y))

#练习1:英制单位英寸与公制单位厘米互换。
value = float(input('请输入长度:')) 
unit = input('请输入单位(英寸/厘米或者in/cm):') 
if unit == '英寸' or unit == 'in':
	print('%f英寸 = %f厘米\n' % (value,value * 2.54))
elif unit == '厘米' or unit == 'cm':
	print('%f厘米 = %f英寸\n' % (value,value / 2.54))
else:
	print('输入单位无效!\n')


'''#练习2:百分制成绩转换为等级制成绩。
要求:如果输入的成绩在90分以上(含90分)输出A;
80分-90分(不含90分)输出B;70分-80分(不含80分)输出C;
60分-70分(不含70分)输出D;60分以下输出E。
'''
score = float(input('请输入分数:'))
if score >= 90:
	grade = 'A'
elif score >=80:
	grade = 'B'
elif score >=70:
	grade = 'C'
elif score >=60:
	grade = 'D'
else:
	grade = 'E'
print('对应的等级是:%s\n' % grade)


#输入三条边长,如果能构成三角形就计算周长和面积。
a = float(input('a = '))
b = float(input('b = '))
c = float(input('c = '))
if a + b > c and a + c > b and b + c > a:
	print('周长:%f\n' % (a + b + c))
	p = (a + b + c) / 2
	area = (p * (p - a) * (p - b) * (p - c)) ** 0.5 #海伦公式
	print('面积:%f\n' % area)
else:
	print('(%.2f , %.2f , %.2f)三边无法构成三角形' % (a,b,c))

python练习1-使用sublime text_第3张图片
python练习1-使用sublime text_第4张图片

2.实验结果

python练习1-使用sublime text_第5张图片

Day4、循环结构

range(101):可以用来产生0到100范围的整数,需要注意的是取不到101
range(1, 101):可以用来产生1到100范围的整数,相当于前面是闭区间后面是开区间。
range(1, 101, 2):可以用来产生1到100的奇数,其中2是步长,即每次数值递增的值。
range(100, 0, -2):可以用来产生100到1的偶数,其中-2是步长,即每次数字递减的值。

1.1.1代码

#for循环
#计算1~100求和的结果
sum = 0
for i in range(100):
	sum += i
print(sum)

#实现1~100之间的偶数求和
sum = 0
for i in range(100,0,-2):
	sum += i
print(sum)

1.1.2.实验结果:

python练习1-使用sublime text_第6张图片

1.2.1代码

#while循环
'''计算机出一个1到100之间的随机数,玩家输入自己猜的数字,计算机
给出对应的提示信息(大一点、小一点或猜对了),如果玩家猜中了
数字,计算机提示用户一共猜了多少次,游戏结束,否则游戏继续。
'''
#方法1:for循环
import random
answer_1 = random.randint(1,100)
x = int(input('请输入数字(1-100):'))
for i in range(4):
	if x == answer_1:
		print('恭喜,您猜测成功!\n')
		break
	else:
		if i == 3:
			print('很遗憾!游戏结束,答案是%d' % answer_1)
			break
		print('抱歉,您猜测失败!游戏继续\n您还有%d次猜测机会' % (3 - i))
		if x < answer_1:
			print('大一点')
		else:
			print('小一点')
		x = int(input('\n请重新输入数字(1-100):'))

#方法2:while循环
answer_2 = random.randint(1,100)
counter = 0
while 1:
	x = int(input('请输入数字(1-100):'))
	counter += 1
	if x == answer:
		print('恭喜,您猜测成功!\n')
		break
	elif x < answer_2:
		print('大一点')
	else:
		print('小一点')
print('您总共猜了%d次' % counter)
if counter > 7:
	print('你的智商余额明显不足')

python练习1-使用sublime text_第7张图片

1.2.2实验结果

python练习1-使用sublime text_第8张图片

1.3 通过嵌套的循环来输出一个九九乘法表

代码

'''#通过嵌套的循环来输出一个九九乘法表。
for row in range(1,10):
	for line in range(row + 1):
		i = line * row
		if i ==0:
			continue
		print('%d * %d = %d' % (line,row,i))
	print('\n')

'''
#示例效果更美观
for i in range(1, 10):
    for j in range(1, i + 1):
        print('%d*%d=%d' % (i, j, i * j), end='\t')
    print()

实验结果
python练习1-使用sublime text_第9张图片

2 练习

练习1:输入一个正整数判断是不是素数。

代码

#    提示:素数指的是只能被1和自身整除的大于1的整数。
	

x = int(input('请输入一个正整数:'))
while 1:
	if x >= 2:
		for i in range(2,x):
			if x % i == 0:
				print('%d不是素数' % x)
				break
		else:
			print('%d是素数' % x)
		break
	else:
		print('%d是素数' % x)
		break
#示例代码,结构比上述我自己写的要清晰,想了好久,还是容易出错
from math import sqrt

num = int(input('请输入一个正整数: '))
end = int(sqrt(num))
is_prime = True
for x in range(2, end + 1):
    if num % x == 0:
        is_prime = False
        break
if is_prime and num != 1:
    print('%d是素数' % num)
else:
    print('%d不是素数' % num)

实验结果
自行测试,不放截图了

python练习1-使用sublime text_第10张图片

练习2:输入两个正整数,计算它们的最大公约数和最小公倍数。

提示:两个数的最大公约数是两个数的公共因子中最大的那个数;两个数的最小公倍数则是能够同时被两个数整除的最小的那个数。
代码

x = int(input('x = '))
y = int(input('y = '))
if x > y:
	x,y = y,x
for i in range(1, x + 1):
	if x % i == 0 and y % i == 0:
		b = i
		continue
print('x,y的最大公约数:%d' % b)
print('x,y的最小公倍数:%d' % (x*y/b))

运行结果
python练习1-使用sublime text_第11张图片

练习3:打印如下所示的三角形图案。

**




*

**




*




实验代码

'''
for i in range(1,6):   #自己写的代码,只画出了第一个图像,后面两个不会
	for j in range(i):
		print('*',end='')
	print('\n')

'''
row = int(input('请输入行数: ')) #参考代码
for i in range(row):
    for _ in range(i + 1):
        print('*', end='')
    print()


for i in range(row):
    for j in range(row):
        if j < row - i - 1: #这一步没看懂
            print(' ', end='')
        else:
            print('*', end='')
    print()

for i in range(row):
    for _ in range(row - i - 1):
        print(' ', end='')
    for _ in range(2 * i + 1):
        print('*', end='')
    print()

python练习1-使用sublime text_第12张图片
实验结果
python练习1-使用sublime text_第13张图片

Day5、构造程序逻辑

代码

你可能感兴趣的:(pyhton)