Daifiboancci

不去追求你渴求的,就永远不会拥有!

博客园 首页 新随笔 联系 订阅 管理

调用模块的两种方式:

1 #方式1
2 from decimal import Decimal
3 Decimal('1.00')
4 
5 #方式2
6 import decimal
7 decimal.Decimal('1.00')

分数与小数间的转换

 1 #小数转换分数
 2 (2.5).as_integer_ratio()
 3 #有时候转换出来的分数的分子分母都很大,可以通过限制最大分母值来控制
 4 x=Fraction(1,3)
 5 a=float(x)
 6 c=Fraction(1,3)
 7 c.limit_denominator(10)
 8  
 9 #分数转换小数
10 x=Fraction(1,3)
11 float(x)

 利用集合和列表过滤重复项

1 #原始列表
2 L=[1,2,1,2,3,4,3,5]
3 #利用集合过滤
4 S=set(L)
5 #还原为列表
6 L=list(S)

Python的变量就是在特定的时间引用了一个特定的对象

关于共享引用和在原处修改

1 #共享引用
2 L1=[1,2,3]
3 L2=L1
4 
5 #在原处更改,即将变量L2赋值给列表对象,改变L1引用的原对象的值
6 L1=[1,2,3]
7 L2=L1[:] #利用分片技术复制
8 L1[0]=24

L==M 测试两个被引用的对象是否有相同的值

L is M 检查对象的同一性

利用raw字符和转移字符打开文件

1 #错误的书写
2 myfile=open('C:\new\text.dat','w') #\n被识别为换行符,\t识别为制表符
3 
4 #利用raw字符
5 #当r(或者R)出现在字符串第一个引号前时,他将关闭转义机制
6 myfile=open(r'C:\new\text.dat','w')
7 
8 #利用转义字符
9 myfile=open('C:\\new\\text.dat','w')

分片S[i:j]提取字符串:

——上边界并不包含在内

——分片的边界默认为0和序列的长度,如果没有给出的话

——S[1:3]分片获取从偏移为1的元素直到但不包括偏移为3的元素

——S[1:]分片获取从偏移为1的元素到序列末尾的之间的元素

——S[:3]分片获取从偏移为0的元素直到但不包括偏移为3的元素

——S[:-1]分片获取从偏移为0的元素直到但不包括最后1个元素

——S[:]实现顶层S拷贝

 完整形式的分片S[i:j:k],含义是:索引S对象中的元素,从偏移为i到偏移为j-1,每隔k元素索引1次,当k为负数时,分片从右至左,此时两个边界的意义发生的对调

1 #利用分片反转字符串
2 str='hello'
3 str1=str[::-1]

数字与字符串之间的转换:int函数将字符串转换成数字,str函数将数字转换成字符串表达式

字符串和ASCII码之间的转换:ord函数将字符串转换成ASCII码,chr函数将ASCII码转换成字符串

字符串方法实例之修改字符串

 1 #分片合并法
 2 S='aabbcc'
 3 S=S[:2]+'mm'+S[4:]
 4 #replace法
 5 S='aabbcc'
 6 S=S.replace('bb','mm']
 7 #列表+join法
 8 S='aabbcc'
 9 L=list(S)
10 L[2]='m'
11 L[3]='m'
12 S=''.join(L) #join的作用就是将列表字符串连接在一起用分隔符隔开,.号前面的字符就是分隔符

字符串方法实例之文本解析

1 #分片法
2 S='aaa,bbb,ccc'
3 S1=S[:3]
4 S2=S[4:7]
5 S3=S[8:]
6 #split法
7 S='aaa,bbb,ccc'
8 S.split(',')

 字符串格式表达式

格式化字符串:

1.在%操作符的左侧放置一个需要格式化的字符串,这个字符串带有一个或者多个嵌入的转换目标,都已%开头;

2.在%操作符的右侧放置一个(或多个,嵌入到元组中)对象,这些对象都会插入左侧想让Python进行格式化字符串的一个(或多个)转换目标的位置上去。

高级字符串表达式应用实例

 1 #左对齐格式化与补零格式化
 2 x=1234
 3 res="integers:...%6d...%-6d...%06d" % (x,x,x)
 4     #%6d补齐6位,右对齐;%-6d补齐6位,左对齐;%06d用0补齐6位
 5 #浮点数的对齐、补零以及添加正负号
 6 x=1.234567
 7 '%-6.2f|%05.2f|%+6.1f' % (x,x,x)
 8     #可以在格式化字符串中用*来指定通过计算得出的宽度以及精度
 9 x=1/3
10 '%f,%.2f,%*.*f' %(x,x,8,5,x)

基于字典的字符串格式化

 1 #示例1
 2 '%(n)d %(x)s' % {"n":1,"s":"spam"}
 3 #示例2
 4 str="今天是%(x)s%(n)d"
 5 value={"x":"星期","n":1}
 6 str % value
 7 #示例3
 8 x="星期"
 9 n=1
10 "今天是%(x)s%(n)d" % vars()
11 #vars()为内置函数,返回的字典包含了所有本函数在调用时存在的变量

 字符串格式化调用方法

1 #示例1
2 str='{0},{1},{2}'
3 str.format('a','b','c')
4 #示例2
5 str='{a},{b},{c}'
6 str.format(a='a1',b='b1',c='c1')

注意:原字符串str不可变,如果使用格式化后的字符串,要将其保存在另一个变量中

 

 

posted on 2013-12-24 17:11  daifiboancci  阅读(280)  评论(0编辑  收藏  举报