day-1.python初学者练手题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了day-1.python初学者练手题相关的知识,希望对你有一定的参考价值。

1.编写一个名为right_justify的函数,函数接受一个名为``s``的字符串作为形参, 并在打印足够多的前导空格(leading space)之后打印这个字符串,使得字符串的最后一个字母位于显示屏的第70列。

def right_justify(s):
    length = len(s)
    lspace = 70 - length
    so =   * lspace + s
    print(so)

right_justify(dean)

2.函数对象是一个可以赋值给变量的值,也可以作为实参传递。例如, do_twice函数接受函数对象作为实参,并调用这个函数对象两次:

def do_twice(f):
    f()
    f()

下面这个示例使用do_twice来调用名为print_spam的函数两次。

def print_spam():
    print(‘spam‘)

do_twice(print_spam)
  1. 将这个示例写入脚本,并测试。
  2. 修改do_twice,使其接受两个实参,一个是函数对象,另一个是值。 然后调用这一函数对象两次,将那个值传递给函数对象作为实参。
  3. 从本章前面一些的示例中,将 print_twice 函数的定义复制到脚本中。
  4. 使用修改过的do_twice,调用print_twice两次,将‘spam‘传递给它作为实参。
  5. 定义一个名为do_four的新函数,其接受一个函数对象和一个值作为实参。 调用这个函数对象四次,将那个值作为形参传递给它。 函数体中应该只有两条语句,而不是四条。
     1def do_twice(f, g):
     2     f(g)
     3     f(g)
     4 
     5 
     6 def print_twice(g):
     7     print(g)
     8     print(g)
     9 
    10 
    11 def do_four(f, g):
    12 #    for i in range(4):
    13 #       f(g)
    14     do_twice(f, g)
    15     do_twice(f, g)
    16 
    17 
    18 do_twice(print_twice, spam)
    19 print(‘‘)
    20 
    21 do_four(print_twice, spam)

    3.编写一个能画出如下网格(grid)的函数

  6.       
    + - - - - + - - - - +
    |         |         |
    |         |         |
    |         |         |
    |         |         |
    + - - - - + - - - - +
    |         |         |
    |         |         |
    |         |         |
    |         |         |
    + - - - - + - - - - +
  7. 提示:你可以使用一个用逗号分隔的值序列,在一行中打印出多个值:
  8. print(‘+‘, ‘-‘)
  9. print 函数默认会自动换行,但是你可以阻止这个行为,只需要像下面这样将行结尾变成一个空格:
  10. print(‘+‘, end=‘ ‘)
    print(‘-‘)
  11.  1 def do_twice(f):
     2     f()
     3     f()
     4 
     5 
     6 def do_four(f):
     7     do_twice(f)
     8     do_twice(f)
     9 
    10 
    11 def print_beam():
    12     print(+ - - - -, end= )
    13 
    14 
    15 def print_post():
    16     print(|        , end= )
    17 
    18 
    19 def print_beams():
    20     do_twice(print_beam)
    21     print(+)
    22 
    23 
    24 def print_posts():
    25     do_twice(print_post)
    26     print(|)
    27 
    28 
    29 def print_row():
    30     print_beams()
    31     do_four(print_posts)
    32 
    33 
    34 def print_grid():
    35     do_twice(print_row)
    36     print_beams()
    37 
    38 
    39 print_grid()

     

 

 

以上是关于day-1.python初学者练手题的主要内容,如果未能解决你的问题,请参考以下文章

初学 C 语言没有项目练手?这 20 个小项目拿走不谢~

初学 C 语言没有项目练手?这 20 个小项目拿走不谢~

js初学练手:Csdn Ads Cleaner

如何将片段中的 ListView 对象的数据传递给 Activity?

Python之值得学习练手的22个迷你程序(附代码)|Python技能树测评

Python初学者第一天