Collatz 序列、逗号代码、字符图网格实例

 更新时间:2017年06月22日 09:43:18   投稿:jingxian  
下面小编就为大家带来一篇Collatz 序列、逗号代码、字符图网格实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

1.collatz序列

编写一个名为 collatz()的函数,它 有一个名为 number 的参数。如果参数是偶数, 那么 collatz()就打印出 number // 2,并返回该值。如果 number 是奇数,collatz()就打 印并返回 3 * number + 1。 然后编写一个程序,让用户输入一个整数,并不断对这个数调用 collatz(),直 到函数返回值1。

#!/usr/bin/env python3
# -*- coding:utf-8 -*-

def collatz(number):
 print(number)
 if number ==1:
  return number
 elif number % 2 ==0:
  return collatz(number//2)
 else:
  return collatz(3*number +1)

A = int(input('Input a number: '))
while True:
 if collatz(A) != 1:
  continue
 else:
  break

输出结果:

Input a number: 6
6
3
10
5
16
8
4
2
1

2.逗号代码

假定有下面这样的列表: spam = ['apples', 'bananas', 'tofu', 'cats']

编写一个函数,它以一个列表值作为参数,返回一个字符串。该字符串包含所 有表项,表项之间以逗号和空格分隔,并在最后一个表项之前插入and。例如,将前面的 spam 列表传递给函数,将返回'apples, bananas, tofu, and cats'。但你的函数应该能够处理传递给它的任何列表。

#!/usr/bin/env python3
# -*- coding:utf-8 -*-

def func(spam):
 spam[-1]='and'+ ' ' + spam[-1]
 for i in range(len(spam)):
  print(spam[i], end=',')


spam = ['apple', 'bananas', 'tofu', 'cats', 'dog']
func(spam)
#输出结果
apple,bananas,tofu,cats,and dog,

3.字符图网格

假定有一个列表的列表,内层列表的每个值都是包含一个字符的字符串,像这样:

grid =[['.', '.', '.', '.', '.', '.'],

['.', 'O', 'O', '.', '.', '.'],

['O', 'O', 'O', 'O', '.', '.'],

['O', 'O', 'O', 'O', 'O', '.'],

['.', 'O', 'O', 'O', 'O', 'O'], 

['O', 'O', 'O', 'O', 'O', '.'], 

['O', 'O', 'O', 'O', '.', '.'],

['.', 'O', 'O', '.', '.', '.'],       

['.', '.', '.', '.', '.', '.']]

你可以认为 grid[x][y]是一幅“图”在 x、y 坐标处的字符,该图由文本字符组成。原点(0, 0)在左上角,向右 x 坐标增加,向下 y 坐标增加。 复制前面的网格值,编写代码用它打印出图像。

..OO.OO..

.OOOOOOO.

.OOOOOOO.

..OOOOO..

...OOO...

....O....

#!/usr/bin/env python3
# -*- coding:utf-8 -*-

grid = [
 ['.', '.', '.', '.', '.', '.'],
 ['.', 'O', 'O', '.', '.', '.'],
 ['O', 'O', 'O', 'O', '.', '.'],
 ['O', 'O', 'O', 'O', 'O', '.'],
 ['.', 'O', 'O', 'O', 'O', 'O'],
 ['O', 'O', 'O', 'O', 'O', '.'],
 ['O', 'O', 'O', 'O', '.', '.'],
 ['.', 'O', 'O', '.', '.', '.'],
 ['.', '.', '.', '.', '.', '.']]
#嵌套循环
for n in range(len(grid[0])):
 for m in range(len(grid)):
  print(grid[m][n], end='')
 print('\n')#换行

#输出结果
..OO.OO..

.OOOOOOO.

.OOOOOOO.

..OOOOO..

...OOO...

....O....

以上这篇Collatz 序列、逗号代码、字符图网格实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • python数据库操作--数据库使用概述

    python数据库操作--数据库使用概述

    这篇文章主要介绍了python中使用mysql数据库详细介绍,本文起讲解了安装mysql、安装MySQL-python、mysql 的基本操作、python 操作mysql数据库基础等内容,需要的朋友可以参考下
    2021-08-08
  • python selenium UI自动化解决验证码的4种方法

    python selenium UI自动化解决验证码的4种方法

    本篇文章主要介绍了python selenium UI自动化解决验证码的4种方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-01-01
  • Python如何省略括号方法详解

    Python如何省略括号方法详解

    这篇文章主要介绍了Python如何省略括号方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03
  • Python爬虫抓取代理IP并检验可用性的实例

    Python爬虫抓取代理IP并检验可用性的实例

    今天小编就为大家分享一篇Python爬虫抓取代理IP并检验可用性的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • pytest接口自动化测试框架搭建的全过程

    pytest接口自动化测试框架搭建的全过程

    pytest是Python的一种单元测试框架,可用来组织用例执行,用例断言,下面这篇文章主要给大家介绍了关于pytest接口自动化测试框架搭建的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-07-07
  • Python中处理字符串之endswith()方法的使用简介

    Python中处理字符串之endswith()方法的使用简介

    这篇文章主要介绍了Python中处理字符串之endswith()方法的使用,是Python入门中的基础知识,需要的朋友可以参考下
    2015-05-05
  • Python Pygame绘制直线实现光线反射效果

    Python Pygame绘制直线实现光线反射效果

    这篇文章主要为大家详细介绍了如何利用Python Pygame绘制直线以实现光线反射效果,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-11-11
  • python处理圆角图片、圆形图片的例子

    python处理圆角图片、圆形图片的例子

    最近因为工作需要,需要处理图片,一种是头像的方形图片处理成圆行的,一种是方形图片的4角变得椭圆点
    2014-04-04
  • Python批量删除只保留最近几天table的代码实例

    Python批量删除只保留最近几天table的代码实例

    今天小编就为大家分享一篇关于Python批量删除只保留最近几天table的代码实例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-04-04
  • Python字符串拼接的4种方法实例

    Python字符串拼接的4种方法实例

    字符串是所有编程语言中都有的基本变量的类型 ,程序员基本每天都在和字符串打交道,下面这篇文章主要给大家介绍了关于Python字符串拼接的4种方法,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-07-07

最新评论