2.2 通用序列操作

#2.2 通用序列操作
#所有序列类型都可以进行的操作:索引indexing,分片sliceing,加adding,乘multiplying,成员资格,
#计算序列长度,找出最大元素,最小元素的内建函数。 #2.2.1 索引
#使用负数索引时,最后一个元素的编号为-1。
greeting = 'Hello'
print(greeting[0])
print(greeting[-1]) #字符串字面值可以直接进行索引
print('zhangxin'[0], 'lyj'[-1]) #直接对返回结果进行索引操作
#fourth = raw_input('Year:')[3] #Year:2013
#print(fourth) #3 #根据给定的年月日以数字形式打印出日期
months = ['January', 'Febuary', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']
print(months) #以1到31的数字作为结果的列表
endings = ['st', 'nd', 'rd'] + 17 * ['th'] + ['st', 'nd', 'rd'] + 7 * ['th'] + ['st']
print(endings) year = raw_input('Year:')
month = raw_input('Month(1-12):')
day = raw_input('Day (1-31)') month_number = int(month)
day_number = int(day) month_name = months[month_number-1]
day_name = day + endings[day_number-1] print month_name + ' ' + day_name + '.' + year
# -*- coding: cp936 -*-
#ch020202.py # 2.2.2 分片 #分片:提取序列的一部分。第1个索引是提取部分第1个元素的编号,最后的索引是分片之后剩下部分的第1个元素的编号
numbers = [0, 1,2,3,4,5,6,7,8,9,10]
print(numbers[3:6]) #可以使用负数索引
print(numbers[-3:-1])
#求序列的后部分,置空最后一个索引即可
print(numbers[-3:])
#若求前半部分,则置空前一个索引即可
print(numbers[:3])
print(numbers[:-3]) #复制整个序列,则两个索引都置空
print(numbers[:])
print(numbers[0:100])#后一个索引超出范围不会报错。 #步长:step length
# 不能为0,但是可以为负数
print('numbers[:] 等同于numbers[::1]')
print(numbers[::1])
print(numbers[0:5:3])
print(numbers[8:2:-2]) #2.2.3 序列相加
print("#2.2.3 序列相加")
#使用加号可以对两个序列进行相加
#两种相同类型的序列才能相加
print([1,2,3] + [4,5,6] + [-1, -2, -3])
print('Hello, ' + 'world!') #2.2.4 乘法
print('#2.2.4 乘法')
#用数字x乘以一个序列会生成新的序列,在新的序列中,原来的序列会重复x次
print('python' * 5)
print([1, 2, 3] * 3) #None是一个python的内建值,它表示这里什么也没有。
print("初始化一个长度为10的列表")
print([None] * 10) #2.2.5 成员资格
#为了检查一个值是否在序列中, 可以使用in运算符,in检查某个条件是否为真,然后返回布尔值。
#条件为真返回True,条件为假返回False。
print('#2.2.5 成员资格')
permissions = 'rw'
print('i' in permissions)
print('w' in permissions) #检查用户名和pin码
database = [['a', ''], ['b',''], ['c',''],['d','']]
username = raw_input('User name:')
pin = raw_input('PIN code:')
if [username,pin] in database : print 'Access granted' #2.2.6 长度、最小值和最大值
print('#2.2.6 长度、最小值和最大值')
#len : 序列中所包含元素的数量
#max : 序列中最大的元素
#min : 序列中最小的元素
#max min函数参数可以直接以多个数字作为参数
numbers = [100, 34, 678]
print(max(numbers))
print(min(numbers))
print(len(numbers))
print(max(5, 10, 100))
print(min(3, 8, 15))

通过例子学python(2.2)的更多相关文章

  1. 通过例子学python(2.1)

    第二章 列表和元组 2.1 序列概览 #第2章 列表和元组 #2.1 序列概览 #序列sequence , 序列中每一个元素被分配一个序号,即元素的位置,也称为索引. #从前往后,0,1,2,3,:从 ...

  2. 通过例子学python(1)

    第一章 基础知识 1.4 数字和表达式 # -*- coding: cp936 -*- # 1.4 数字和表达式 # ** 表示幂(乘方)运算 #1.4.1 长整型数 print(9999999999 ...

  3. Python基础练习题100例(Python 3.x)

    1:题目:有四个数字:1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? 程序分析:可填在百位.十位.个位的数字都是1.2.3.4.组成所有的排列后再去 掉不满足条件的排列. 程序源 ...

  4. 《跟孩子学Python》

    1:Python对象之间的赋值是内容赋值而不是引用赋值 a = ["aaa","bbb","ccc"] b = a print a prin ...

  5. 耗子学Python了(2)__Python开发“Hello World”

    一:开发工具 在网上看到的用的开发工具Aptana Studio,我下载的是Aptana_Studio_3_Setup_3.6.1.exe,在安装的过程中啊,出现了各种问题,然后安装后了也出现打不开的 ...

  6. 耗子学Python了(1)___Python环境配置

    一:写在开始的开始 最近我们团对的老大问我想看什么书,我让老大买了一本<Python 3面向对象编程>,所以在看的时候边敲边实践,决定在自己电脑配置下相应的环境,然后开始Python的学习 ...

  7. 跟着官网的例子学Reacjs (一)FilterableProductTable

    最近开始学习React,发现最好的方法不是看这个书那个书,而是直接上官网,一步步的跟着学习,真的获益匪浅.许多翻译的书上漏掉的知识点都可以学到. 入门的一些准备工作可以参照官网的步骤,引入依赖的核心包 ...

  8. 【Python数据分析】Python3多线程并发网络爬虫-以豆瓣图书Top250为例

    基于上两篇文章的工作 [Python数据分析]Python3操作Excel-以豆瓣图书Top250为例 [Python数据分析]Python3操作Excel(二) 一些问题的解决与优化 已经正确地实现 ...

  9. python相似模块用例(一)

    一:threading VS Thread 众所周知,python是支持多线程的,而且是native的线程,其中threading是对Thread模块做了包装,可以更加方面的被使用,threading ...

随机推荐

  1. SQL2008安装提示"Microsoft visual studio 2008早期之前的版本"解决(这是我认为最简单有效的方法)

    作者:冰封 日期:2013-10-18 原文地址:http://www.skywj.com/thread-9230-1-1.html 在安装SQL Server的时候提示 Microsoft visu ...

  2. NSAttributedString用法

    以前看到这种字号和颜色不一样的字符串,想出个讨巧的办法就是“¥150”一个UILabel,“元/位”一个UILabel.今天翻看以前的工程,command点进UITextField中看到[attrib ...

  3. 【清橙A1094】【牛顿迭代法】牛顿迭代法求方程的根

    问题描述 给定三次函数f(x)=ax3+bx2+cx+d的4个系数a,b,c,d,以及一个数z,请用牛顿迭代法求出函数f(x)=0在z附近的根,并给出迭代所需要次数. 牛顿迭代法的原理如下(参考下图) ...

  4. WF学习笔记(二)

    -DoWhile循环:当[Condition]条件为真时会执行[Body]中的内容, 当[Condition]条件为假时会执行[Body]中的内容一次 -ForEach<T> 循环 :[V ...

  5. MVC中的文件上传-小结

    web开发中,文件的上传是非常基本功能之一. 在asp.net中,通常做法是利用webservice 来接收文件请求,这样做的好处就是全站有了一个统一的文件上传接口,并且根据网站的实际情况,可以将we ...

  6. input 表单点击消失离开出现

    效果1: <input type="text" name="textfield" value="这里是提示内容" onclick=&q ...

  7. Android 开机过程PMS分析

    12-13 12:25:05.595 3253 3253 SystemServer !@Boot: Start PackageManagerService pm/PackageManagerServi ...

  8. 练习2 E题 - 求奇数的乘积

      Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u   Description 给你n ...

  9. classpath目录

    WEB-INF/ 是资源目录, 客户端不能直接访问, 这话是没错,不过现在的IDE编译器在编译时会把src下的文件(是文件,不是.java)移到WEB-INF/classes下.不过值得注意的是,sp ...

  10. 上传XML文件字符编码问题

    1.上传的XML文件的空格的字符编码和倒入到数据库的空格的字符编码不是一种编码格式,导致导入到数据库的数据和XML文件的数据不一致的情况,进而使展示到界面上的数据在进行搜索时不能搜索出来.解决办法: ...