python自学笔记一

时间:2023-12-18 15:37:32

  之前看过一段时间的小甲鱼零基础自学python,b站上有高清免费资源[av4050443],但是作为零基础实在学得艰难,下载了python核心编程pdf,在这里做一些笔记。

  虽然使用的是第二版的教材,但我使用的是python3.5.2,感觉上差别不大,可以阅读。

  这里从第二章的练习题开始!

--------------------------------------------------------

2 - 5:用while 和for 打印0-10:

i = 0

while i < 11:

  print(i)

  i += 1

------------

for i in range(11):

  print(i)

---------------------------------------------

2 - 7: 输入字符串并打印,使用while和for:

str_input = input('请输入字符串:')

i = 0

while i < len(str_input):

  print(str_input[i])

  i += 1

-----------

str_input = input('请输入字符串: ')

for i in str_input:

  print(i)

--------------------------------------------------------------

2 - 8: 输入5个数字相加:

i = 0

temp = 0

while i < 5:

  temp += int(input('请输入一个数字:'))

  i += 1

print(temp)

--------------

temp = 0

for i in range(5):

  temp += int(input('请输入一个数字:'))

print(temp)

------------------------------------------------------

2 - 9: 输出五个值的平均值:

temp = 0

for i in range(5):

  temp += int(input('请输入一个数字:'))

arverage = temp / 5

print(arverage)

------------------------------------------------------------

2 - 10: 判断是否输入1到100,是则停止,否则重新输入:

num = int(input(’请输入一个1到100之间的整数:'))

while num not in range(2,101):

  print('输入有误')

  num = int(input(’请输入一个1到100之间的整数:'))

print('You are right!')

--------------

使用递归显得麻烦,我不太会(如下):

def function1(num):

  if 1 < num < 100:

    print('your number in (1,100)')

  else:

    print('the number you input is not in (1,100)')

    num = int(input('please input  a number:'))

    function1(num)

num = int(input('please input  a number:'))

    function1(num)

---------------------------------------------------------------

2 - 11:输入1求和,输入2取平均,输入X退出:

(几乎是抄袭别人的,我本来写了一个,总是报错)

def add():

  temp = 0

  for i in range(5):

    temp += float(input('请输入第%d个数:' % (i + 1)))

  print(temp)

def aver():

  temp = 0

  for i in range(5):

    temp += float(input('请输入第%d个数:' % (i + 1)))

  print(temp / 5)

foo = str(input('输入1求和,输入2取平均,输入X退出 :'))
if foo == 'X':
  print('退出成功')
elif foo == '1':
  add()
elif foo == '2':
  aver()
else:
  print('输入错误')

------------------

下面是我的错误程序(以后再来改):

foo = str(input('输入1求和,输入2取平均,输入X退出 :'))

temp = 0

for i in range(5):

  temp += float(input('请输入第%d个数:' % (i + 1)))

if foo == 'X':
  print('退出成功')
elif foo == '1':
  print(temp)
elif foo == '2':
  print(temp / 5)
else:
  print('输入错误')

--------------------------------------------------

2 - 15: 输入三个数排序:

a = float(input('输入第一个数:'))
b = float(input('输入第二个数:'))
c = float(input('输入第三个数:'))

if a > b:
  a,b = b,a   #保证a较小
if a > c:
  a,c = c,a    #保证a较小,此时a最小
if b > c:
  b,c = c,b    #保证b较小

print(a,b,c)