list:

创建:list = [5,7,9]

取值和改值:list[1] = list[1] * 5

列表尾插入:list.append(4)

去掉第0个值并返回第0个值的数值:list.pop(0)

去掉第0个值但不返回数值:del(list[0])

去掉具体某个值:list.remove(35)

函数function:

无参数:def function():

一个参数:def function(x):

2个参数:def function(y):

任意个参数:def add_function(*args):

函数range:

一个参数:range(n)  从第0位开始数n个位

两个参数:range(m,n) 从第m位开始到第n-1位,递增间隔为1

三个参数:range(m,n,i) 从第m位开始到第n-1位,递增间隔为i

for item in list:  和 for i in range(len(list)): 等价

对list中的元素用separator作为间隔输出: print separator.join(list)

如: list = ['a','b','c','d']   一般的print list会输出: ['a','b','c','d']。

而 print " ".join(list) 会输出:a b c d(必须是双的双引号,单的双引号不起作用)

接受键盘输入:

guess_row = int(raw_input("Guess Row:"))

下面是一个自己写的小程序:生成一个方阵和随机的位置,叫玩家猜这个生成的位置是哪里

  1. from random import randint
  2.  
  3. def creat_board(length):
  4. board = []
  5. for i in range(length):
  6. board.append(['O'] * length)
  7. return board
  8.  
  9. def print_board(x):
  10. for row in x:
  11. print " ".join(row)
  12.  
  13. def random_row(board):
  14. return randint(0, len(board) - 1)
  15.  
  16. def random_col(board):
  17. return randint(0,len(board[0]) - 1)
  18.  
  19. length = int(raw_input("Enter board's length you:"))
  20.  
  21. board = creat_board(length)
  22.  
  23. print_board(board)
  24.  
  25. turns = int(raw_input("Enter turns you want to play:"))
  26.  
  27. for turn in range(turns):
  28. ship_row = random_row(board)
  29. ship_col = random_col(board)
  30.  
  31. print "This is " + str(turn + 1) + "th time to guess:"
  32. guess_row = int(raw_input("Enter the row you guess:"))
  33. guess_col = int(raw_input("Enter the col you guess:"))
  34.  
  35. if guess_row == ship_row and guess_col == ship_col:
  36. print "You win!"
  37. break
  38. else:
  39. if (guess_row < 0 or guess_row > len(board) - 1) or (guess_col < 0 or guess_col > len(board) - 1):
  40. print "Incorrect input!"
  41. if turn == turns - 1:
  42. print "Turns out!"
  43. elif board[guess_row][guess_col] == 'X':
  44. print "You have guessed it already!"
  45. if turn == turns - 1:
  46. print "Turns out!"
  47. else:
  48. print "You guess wrong!"
  49. board[guess_row][guess_col] = 'X'
  50. print_board(board)
  51. if turn == turns - 1:
  52. print "Turns out!"

曾经犯的错误:

1.创建board函数忘记返回一个board,所以它一直为空,导致后面的操作都越界了;

2.生成随机位置的时候,位置row和col的命名一直是跟生成的函数名一样(random_row=random_row(board)),导致TypeError: 'int' object is not callable错误。

python学习之list的更多相关文章

  1. Python学习--04条件控制与循环结构

    Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...

  2. Python学习--01入门

    Python学习--01入门 Python是一种解释型.面向对象.动态数据类型的高级程序设计语言.和PHP一样,它是后端开发语言. 如果有C语言.PHP语言.JAVA语言等其中一种语言的基础,学习Py ...

  3. Python 学习小结

    python 学习小结 python 简明教程 1.python 文件 #!/etc/bin/python #coding=utf-8 2.main()函数 if __name__ == '__mai ...

  4. Python学习路径及练手项目合集

    Python学习路径及练手项目合集 https://zhuanlan.zhihu.com/p/23561159

  5. python学习笔记-python程序运行

    小白初学python,写下自己的一些想法.大神请忽略. 安装python编辑器,并配置环境(见http://www.cnblogs.com/lynn-li/p/5885001.html中 python ...

  6. Python学习记录day6

    title: Python学习记录day6 tags: python author: Chinge Yang date: 2016-12-03 --- Python学习记录day6 @(学习)[pyt ...

  7. Python学习记录day5

    title: Python学习记录day5 tags: python author: Chinge Yang date: 2016-11-26 --- 1.多层装饰器 多层装饰器的原理是,装饰器装饰函 ...

  8. [Python] 学习资料汇总

    Python是一种面向对象的解释性的计算机程序设计语言,也是一种功能强大且完善的通用型语言,已经有十多年的发展历史,成熟且稳定.Python 具有脚本语言中最丰富和强大的类库,足以支持绝大多数日常应用 ...

  9. Python学习之路【目录】

    本系列博文包含 Python基础.前端开发.Web框架.缓存以及队列等,希望可以给正在学习编程的童鞋提供一点帮助!!! 目录: Python学习[第一篇]python简介 Python学习[第二篇]p ...

  10. python学习笔记系列----(八)python常用的标准库

    终于学到了python手册的最后一部分:常用标准库.这部分内容主要就是介绍了一些基础的常用的基础库,可以大概了解下,在以后真正使用的时候也能想起来再拿出来用. 8.1 操作系统接口模块:OS OS模块 ...

随机推荐

  1. 通过OpenSSL解码X509证书文件

    在Windows平台下.假设要解析一个X509证书文件,最直接的办法是使用微软的CryptoAPI. 可是在非Windows平台下,就仅仅能使用强大的开源跨平台库OpenSSL了.一个X509证书通过 ...

  2. 积累的VC编程小技巧之树操作

    1.如何在TreeList中加图标? [问题提出]  请问treeview控件和treectrl控件的用法有何不同呢?向如何imagelist控件中加图象呀?  [解决方法]  1)    HICON ...

  3. [置顶] 关于redhat系统yum源的配置2

    (二)配置yum源(官方) 1.在终端输入以下命令(RHEL6/CentOS6) wget http://lug.ustc.edu.cn/wiki/_export/code/mirrors/help/ ...

  4. C语言 realloc为什么要有返回值,realloc返回值具体解释/(解决随意长度字符串输入问题)。

    在C语言操作中会用到大量的内存操作,当中非经常常使用的一个是realloc(). 由字面意思能够知道,该函数的作用是用于又一次分配内存. 使用方式例如以下: NewPtr=(数据类型*)realloc ...

  5. AS3开发必须掌握的内容

    1.事件机制 2.显示列表 3.垃圾回收 4.常用方法 5.网络通信 6.位图动画 7.渲染机制 8.API结构 9.沙箱机制 10.资源管理 11.内存管理 12.性能优化 13.资源选择 14.安 ...

  6. hdu 4715 Difference Between Primes 2013年ICPC热身赛A题 素数水题

    题意:给出一个偶数(不论正负),求出两个素数a,b,能够满足 a-b=x,素数在1e6以内. 只要用筛选法打出素数表,枚举查询下就行了. 我用set储存素数,然后遍历set里面的元素,查询+x后是否还 ...

  7. android百度地图打包混淆 用不了No such file or directory (2) com.baidu.mapapi.BMapManager.init(Unknown Source)

    调用了百度地图地图开发包是baidumapapi_v2_1_1.jar,定位SDK版本是locSDK_3.3.jar 调试的时候能运行!可是打包签名后就运行不了! baidu  google 了好久! ...

  8. [C#基础] 泛型

    为什么泛型? 在泛型中,最重要的应用便是集合类,因此我们模拟一个简单的集合类 对于上述示例,可以有如下应用 从上可看出,自定义的代码太丑陋了,只能用于string类型. 当然我们可以用object作为 ...

  9. form表单标签的enctype属性的作用

    Enctype是指定将数据回发到server时浏览器使用的编码类型.其编码类型有下面三种 一. application/x-www-form-urlencoded         这是通过表单发送数据 ...

  10. WM_CLOSE、WM_DESTROY、WM_QUIT学习总结(点击关闭按钮会触发WM_CLOSE消息,DestroyWindow API会触发WM_DESTROY和WM_NCDESTROY消息,MSDN上写的很清楚)

    WM_CLOSE:关闭应用程序窗口 WM_DESTROY:关闭应用程序 WM_QUIT:关闭消息循环 只有关闭了消息循环,应用程序的进程才真正退出(在任务管理器里消失). win32应用程序的完整退出 ...