Python 学习---------Day3

第七章 字符串
单双引号字符串是一样的
用转义序列代表特殊字节
字符串抑制转义
myfile=open(r‘C:\new\text.dat‘,‘w‘)
三重引号编写多行字符串块
字符串更大的编码集
std(u‘spam‘)
unicode(‘spam‘)
实际中的字符串
基本操作
索引和分片
拓展分片:第三个限制值
s[1:10:2]
s{::2]
s{::-1]
字符串转换工具
int(‘123‘),str(42)
repr(42)
字符串代码转换
ord(‘s‘) 115
chr(115) s
二进制的转换
B=‘1101‘
I=0
while B:
I=I*2+ord(B[0]-ord(‘0‘))
B=B[1:]

I=13

‘That is %d %s bird!‘ %(1,‘dead‘)
字符串格式化
任何对象都可以转化为字符串,(打印时候使用),只需要使用%s这个代码来格式化表达式
基于字典的字符串格式化
"%(n)d %(x)s" %{"n":1,"x":spam}
reply="""
Greeting...
Hello %(name)s!
Your age is %(age)s
"""
value={"name":"bob","age":12}
print reply %value

字符串方法
s=‘xxxxSPAMxxxSPAMxxx‘
where=s.find("SPAM")
s=s[:where]+‘adas‘+s[(where+4):]

s.replace("spam",‘asda‘)
s.replace("soam","asda",1)

s=‘spam‘
L=list(s)
L[2]=‘z‘
s="".join(L) join方法可以把列表字符串连在一起
split()方法可以将一个字符串分割成一个子字符串的列表
line=‘aaa bbb ccc‘
cols=line.split() cols=[‘aaa‘,‘bbb‘,‘ccc‘]
line="i‘mSPAMSPAMlumberjack"
line.split("SPAM")
["i‘m", ‘lumberjack‘]
rstrip()
upper()
isalpha()
endswith()

第八章 列表与字典
列表:
任意对象的有序集合
通过偏移读取
可变长度,异构以及任意嵌套
属于可变序列的分类
对象引用数组
基本列表操作
len([1,2,3])
[1,2,3]+[4,5,6]
[‘NI‘]*4
3 in [1,2,3]
for x in [1,2,3]:
print x,
str([1,2])+"34" ‘[1,2]34‘
[1,2]+list("34")
原处修改列表
L=[‘spam‘,‘Soan‘,‘SPAM"]
L[1]=‘eggs‘
L=[0:2]=[‘eat‘,‘more‘]
L.append(‘please‘)
L.sort()
append()和sort()之类的属性,对象的修改有点类似副作用,所以没必要重新赋值
L[:0]=[x]
L=[1,2]
L.extend([3,4,5])
L.pop()
L.reverse()
L=[]
L.append(1)
L.append(2)
L.pop()
del L[0]
L[1:]=[]
L[0]=[] L=[[]]
字典
通过键而不是偏移量来读取
任意对象的无序集合
可变长,异构,任意嵌套
属于可变映射类型
对象引用表(哈希表)

字典的基本操作
d={‘spam‘:2,‘ham‘:1,‘eggs‘:3}
d[‘spam‘]
len(d)
d.has_key(‘spam‘)
d.keys()
d[‘spam‘]=[‘grill‘,‘bake‘,‘fry‘]
del d[‘eggs‘]
d.values()
d.items()
d.get(‘spam‘)
d2={‘a‘:4,‘b‘:5}
d.uodate(d2)
d
d.pop(‘spam‘)
for key in D.keys()
for key in D
字典用于稀疏数据结构
matrix={}
matrix[(2,3,4)]=88
matrix[(1,2,3)]=89
if else
try :
except keyError:
matrix.get((2,3,4),0)

dict.fromkeys([‘a‘,‘b‘],0)

第九章 元组,文件以及其他
元组
任意对象的有序集合
通过偏移存取
属于不可变序列类型
固定长度,异构,任意嵌套
对象引用的数组
元组的特殊语法:逗号和圆括号
x=(40) x=40
x=(40,) x=(40)
如果你想对元组进行排序,先把它转换为列表,将它变为一个可变对象,然后再转换为元组
t=(‘cc‘,‘aa‘,‘bb‘,‘dd‘)
tmp=list(t)
tmp.sort()
t=tuple(tmp)

注意元组的不可变性只适合用于元组本身顶层而并非其内容,例如元组内部的列表使可以像往常那样修改
t=(1,2,[3,4],4)
t[2][0]=‘spam‘

文件
实际应用中的文件
myfile=open(‘myfile‘,‘w‘)
myfile.write(‘hello text file\n‘)
myfile.close()

myfile=open(‘myfile‘)
myfile.readline()
myfile.readline()
pickle 的使用
struct 模块
引用和拷贝
copy方法可以复制字典,l[:]可以复制序列

比较,相等性和真值
== 操作符测试值的相等性
is 操作符测试对象的一致性

l1=[1,(‘a‘,3)]
l2=[1,(‘a‘,3)]
l1==l2 ,l1 is l2
(True,False)

s1=‘spam‘
s2=‘spam‘
s1==s2,s1 is s2
(True,True)
这里不一样的原因是在Python内部暂时存储并重复使用短字符串作为最佳化,事实上只有一个字符串‘spam‘供s1和s2使用
如果使用长点的字符串
s1=‘a long string‘
s2=‘a long string‘
s1==s2 s1 is s2
(True,false)

时间: 2024-08-06 05:55:23

Python 学习---------Day3的相关文章

Python学习day3作业

Python学习day3作业 days3作业 作业需求     HAproxy配置文件操作 根据用户输入,输出对应的backend下的server信息 可添加backend 和sever信息 可修改backend 和sever信息 可删除backend 和sever信息 操作配置文件前进行备份 添加server信息时,如果ip已经存在则修改;如果backend不存在则创建:若信息与已有信息重复则不操作 [x] 博客 [x] 查询backend下的server信息 [x] 添加backend和se

python学习day3:函数

:first-child { margin-top: 0; } blockquote > :last-child { margin-bottom: 0; } img { border: 0; max-width: 100%; height: auto !important; margin: 2px 0; } table { border-collapse: collapse; border: 1px solid #bbbbbb; } td { padding:4px 8px; border-co

Python学习--day3

一.集合        1. 什么是集合 dict的作用是建立一组 key 和一组 value 的映射关系,有的时候,我们只想要 dict 的 key,不关心 key 对应的 value,这时,集合就派上用场了.集合set是一个无序的,不重复的数据组合.它的作用主要有: 去重,set中的元素没有重复,而且是无序的 关系测试,测试两组数据之前的交集.差集.并集等关系 创建 set 的方式是调用 set() 并传入一个 list,list的元素将作为set的元素: 1 list_1=[1,2,3,'

python 学习day3

set(无序不重复的序列) 创建两种方式 例一:s1 = {1,2,3} 例二:s2 = set() ,s3 = set([1,2,3,4,5]) 功能 s2.add(123) #添加s2集合中123元素 s2.clear() #清除内容 s2.copy() #浅拷贝 s1.difference.s2 #获取s1中存在 s2中不存在的 s1.difference_update.s2 #从当前集合中删除和B中相同的元素 s1.discard('aaa') #移除指定元素,不存在不保错 s1.int

Python 学习 DAY3(函数 input & print)

input  1 格式: input([prompt])  prompt为提示信息  ctrl+z结束输入 2 函数功能: 接受一个标准输入数据,返回string类型 3 实例: print 1 格式: print([object, ...], *, sep=' ', end='\n', file=sys.stdout) (end默认值为回车,可自定义符号) 2 函数功能: 输出各类型数据:字符串,整数,浮点数,初度以及精度控制 3 实例: print():输出一个空行 print(str或nu

Python学习Day3

字符串的索引与切片 str_1 = 'NeroIsGoodMan' str_2 = str_1[5] #索引单个字符>>>s str_3 = str_1[0:] #从开始到结尾全部切片>>>NeroIsGoodMan str_4 = str_1[:4] #0-4的字符切片,顾头不顾尾>>>Nero str_5 = str_1[4:] #从索引4到最后切片>>>IsGoodMan str_6 = str_1[::-1] #反向>&

python学习day-3 列表 元祖 字典

一.列表list a.基础 1. li = [1, 12, 9, "age", ["石振文", ["19", 10], "庞麦郎"], "alex", True] 中括号括起来:,分割每个元素:列表中的元素可以是数字,字符串,列表,布尔值......:列表可以嵌套 (他就是个集合,内部放置任何东西) 2.可以进行索引,切片取值 li = [1, 12, 9, "age", ["

python学习DAY3(列表)

今天所学知识主要是列表,其大概操作以及含义和C\C++等编程语言的数组很类似,记住一些常用的函数格式就行了 列表 names=["aaa","bbb","ccc","ddd"] //类似于C++中的数组 print(name) print(names[0]) //取出第一个元素 列表一些较为常用的操作函数 #切片 print(names[1:3]) #注意冒号 '''取出第二个元素和第三个元素!注意,取出元素在原列表的标记类似

Python学习记录day3

Python学习记录 day3 今天是银角大王武sir讲课.先回顾了上节课所学,然后讲到了面向对象思想. set set是一个无序且不重复,可嵌套的元素集合 class set(object):     """     set() -> new empty set object     set(iterable) -> new set object     Build an unordered collection of unique elements.     

Day3: Python学习笔记之计算机基础——网络片

Day3: Python学习笔记之计算机基础--网络片 什么是互联网协议以及为何要有互联网协议? ?互联网协议本质上是为了方便连接两台计算机而指定的一系列统一的标准. osi五层模型 计算机之间要实现数据传输必须要经过以下五层协议: ? 模型 ,协议 ,硬件 ? 应用层, http协议.用户自定义协议 ? 传输层, TCP/UPD协议 ,四层交换机.四层路由器 ? 网络层, IP协议, 三层交换机.路由器 ? 数据链路层, 以太网.电信号分组, 网桥.以太网交换机.网卡 ? 物理层, 传递电信号