《Python基础教程》第2章读书笔记(1)
# -*- coding:utf-8 -*- #最基本的数据结构:序列,索引从0开始
#python包括6种内建的序列
#最常用的序列包括:列表,元祖 #列表
edward = ['Edward Gumby',42]
print edward #列表的元素可以是列表
john=['John Smith',50]
database = [edward, john]
print database #python之中还有一种名为容器的数据结构。
#序列(如列表和元组)和映射(如字典)是两类主要的容器。
#序列的每个元素都有自己的编号,而映射中的每一个元素则有一个名字(也称为键)
#既不是序列也不是映射的容器类型:集合(set) #序列(list\triple)的通用操作:索引、分片、加、乘、以及检查某个元素是否属于序列的成员、计算序列长度、找出最大元素、找出最小元素、迭代 #字符串使用索引
greeting = 'hello'
print greeting[0]
print greeting[-1] #字符串字面值直接使用索引
print greeting[1] #如果一个函数返回一个序列,那么可以直接对返回结果进行索引操作。
#fourth = raw_input('Year: ')[3]
#print fourth #输入年月日的数字,打印日期
#为方便后续笔记调试,该段代码已被注释掉
'''
months = [
'January',
'February',
'March',
'April',
'May',
'June',
'July',
'August',
'September',
'October',
'November',
'December'
] endings = ['st','nd','rd'] + 17 *['th']\
+ ['st','nd','rd'] + 7 *['th']\
+ ['st'] 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]
ordinal = day + endings[day_number-1] print month_name + ' ' + ordinal + ' ' + year
''' #分片,t[a:b]不包括t[b]
tag = 'https://www.quora.com/#'
tmpTag = tag[8:21]
print tmpTag #www.quora.com
print tag[8:-2] #www.quora.com #对列表分片
numbers = [1,2,3,4,5,6,7,8,9,10]
print numbers[3:6] #[4, 5, 6] #访问后几个元素
print numbers[8:] print numbers[-3:-1] #[8, 9] print numbers[-3:0] #[] print numbers[-3:] #[8, 9, 10] print numbers[:3] #[1, 2, 3] print numbers[:] #[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] #对http://www.quora.com形式的URL进行分割
'''
url = raw_input("Please enter the url:")
domain = url[11:-4]
print "Domain name: " + domain
''' #更大的步长
print numbers[0:10:1] #[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] print numbers[0:10:2] #[1, 3, 5, 7, 9] print numbers[3:6:3] #[4] print numbers[::3] #[1, 4, 7, 10] #步长可以是负数
print numbers[8:3:-1] #[9, 8, 7, 6, 5] #范围和步长不一致,输出为空
print numbers[3:8:-1] #[] print numbers[::-2] #[10, 8, 6, 4, 2] #一端没有指定,步长为负的情况:起始点大于结束点
print numbers[5::-2] #[6, 4, 2]
print numbers[:5:-2] #[10, 8] #序列相加
print [1,2,3]+[4,5,6] print 'Hello ' + 'world!' '''
print [1,2,3] + 'world!'
#TypeError: can only concatenate list (not "str") to list
''' #乘法
print 'python '*5 print [42] * 10 #None、空列表 和 初始化
sequence = [None]*10
print len(sequence) #以正确的宽度在居中的“盒子”内打印一个句子
'''
sentence = raw_input("Sentence: ")
screen_width = 80
text_width = len(sentence)
box_width = text_width + 20
left_margin1 = (screen_width - box_width) // 2
left_margin2 = (screen_width - text_width - 4) // 2 print
print ' ' * left_margin1 + '+' + '-' * (box_width -2) + '+'
print ' ' * left_margin2 + '| ' + ' ' * text_width + ' |'
print ' ' * left_margin2 + '| ' + sentence + ' |'
print ' ' * left_margin2 + '| ' + ' ' * text_width + ' |'
print ' ' * left_margin1 + '+' + '-' * (box_width -2) + '+'
''' #成员资格
permissions = 'rw'
print 'w' in permissions
print 'x' in permissions
users = ['mlh', 'foo', 'bar']
#print raw_input('Enter your user name: ') in users subject = 'Get rich now!!'
print 'rich' in subject #True #检查用户名和输入码
'''
database = [
['albert', '1234'],
['dilbert', '4242'],
['smith', '7524'],
['jones', '8765']
]
username = raw_input('User name: ')
pin = raw_input('PIN code: ') if [username, pin] in database: print 'Access granted'
''' #长度、最小值、最大值
numbers = [100, 34, 765]
print len(numbers)
print max(numbers)
print min(numbers)
《Python基础教程》第2章读书笔记(1)的更多相关文章
- python基础教程第2章——列表与元组笔记
1.序列是Python中最基本的数据结构.序列中的每个元素被分配一个序列号——元素的位置,也称索引,第1个索引是0,第2为1,以此类推.序列中的最后1个元素为-1,倒数第2个位-2. python中有 ...
- python基础教程-第三章-使用字符串
本章将会介绍如何使用字符串何世华其他的值(如打印特殊格式的字符串),并简单了解下利用字符串的分割.联接.搜索等方法能做些什么 3.1 基本字符串操作 所有标准的序列操作(索引.分片.乘法.判断成员资格 ...
- python基础教程第4章——字典
1.映射(mapping):通过名字引用值的数据结构.字典是Python中唯一内建的映射类型,字典中的值并没有特殊的顺序,但是都存储在一个特定的键(key)里.键可以是数字.字符串甚至是元组. 2.字 ...
- python基础教程第5章——条件循环和其他语句
1.语句块是在条件为真(条件语句)时执行或者执行多次(循环语句)的一组语句.在代码前放置空格来缩进语句即可穿件语句块.块中的每行都应该缩进同样的量.在Phyton中冒号(:)用来标识语句块的开始,块中 ...
- 《Python基础教程》第一章:基础知识
如果希望只执行普通的除法,可以在程序前加上以下语句:from __future__ import division.还有另外一个方法,如果通过命令行运行Python, 可以使用命令开关-Qnew.此时 ...
- python基础教程第6章——抽象
1.函数的定义,使用def(或“函数定义”)语句: def hello(name): return ‘Hello.'+name+'!' def fibs(num): result=[0,1] for ...
- python基础教程第3章——字符串
1.字符串格式化 字符串格式化操作符%+转换标志+最小字段宽度+点后跟精度值+转换类型 String模块提供另外一种格式化方式 from string import Template s=Templa ...
- 《Java基础教程》第一章学习笔记
Java 是什么呀! 计算机语言总的来说分成机器语言,汇编语言,高级语言.其中Java一种高级计算机语言,它是一种可以编写跨平台应用软件,完全面向对象的程序设计语言. Java划分为三个技术平台,Ja ...
- 《Python基础教程》第二章:列表和元组(2)
list函数可以将字符串转换为列表 ' '.join(somelist)可以将列表转换为字符串 从列表中删除元素可以使用del语句来实现 方法是与对象有紧密联系的函数:对象.方法(参数) append ...
- 《Python基础教程》第二章:列表和元组(1)
列表可以修改,元组则不能 字符串就是一个由字符组成的序列 使用分片操作来访问一定范围内的元素,分片操作的实现需要提供两个索引作为边界,第一个索引的元素是包含在分片内的,而第二个不包含在分片内. 如果分 ...
随机推荐
- 【webpack】-- 自动刷新
前端需要频繁的修改js和样式,且需要根据浏览器的页面效果不断的做调整:而且往往我们的开发目录和本地发布目录不是同一个,修改之后需要发布一下:另外一点就是并不是所有的效果都可以直接双击页面就能看到,我们 ...
- Angular开发者指南(一)入门介绍
什么是Angular AngularJS是动态Web应用程序的结构框架. 它允许您使用HTML作为模板语言,并允许您扩展HTML的语法以清晰,简洁地表达应用程序的组件.AngularJS的数据绑定和依 ...
- HTML5之多媒体
概览 html5新增了两个关于多媒体的元素:video和audio,前者是用于视频,后者用于音频.而他们使用非常简单 <audio src="xhn.mp3" control ...
- 右键打开cmd命令出错
今天想在E盘git clone一个工程项目下来,发现自己的window10上,出现了如下问题(不知道是不是是什么软件引起的冲突) 在度娘里面找了半天也没有解决问题,只有通过如下方法实现了 ctrl+r ...
- js中call、apply、bind那些事
前言 回想起之前的一些面试,几乎每次都会问到一个js中关于call.apply.bind的问题,比如- 怎么利用call.apply来求一个数组中最大或者最小值 如何利用call.apply来做继承 ...
- 同步 VS 异步
同步请求资源 请求msdn上的一个页面计算页面大小 static void Main(string[] args) { string url = "https://docs.microsof ...
- node.js 基础知识之 querystring.stringify querystring.escape
序列化 1. querystring.stringify({name:'chenshuai',ago:21,job:"web"}) 'name=chenshuai&am ...
- fastjson将json格式null转化空串
生成JSON代码片段 Map < String , Object > jsonMap = new HashMap< String , Object>(); jsonMap.pu ...
- ng-clip angualr 的copy功能
每次写博客都想由衷的给我的老大膜拜一番!以前刚开始做angular的项目的时候就有说要有点击复制的功能因为当时菜啊,不懂啊.也就没做,今天老大又给了我一个资料!“ng-clip”.跟着老大最大的收获就 ...
- 更改服务器的SID 加入域控制器提示SID重复
启动Windows2008.2012进入系统后,打开“CMD窗口”并进入到"C:\windows\system32\sysprep"目录后再输入“sysprep /generali ...