星海's Blog

老头初学编程
Python学习笔记(1)
Python学习笔记(三)

Python学习笔记(2)

星海 posted @ 2010年10月02日 08:59 in Python学习 , 2187 阅读

高亮显示test

不要删除了阿

#!/usr/bin/python
from decimal import Decimal
Decimal('0.1')+Decimal('0.1')+Decimal('0.1')-Decimal('0.3')
#结果为 Decimal("0.0")

#其它在decimal模块中的工具可以用于设置所有小数的精度等。例如这个模块中的contex对象可以设置特定的精度(小数位数),或者截短模式(舍去还是进位等)
#Decimal后接字符串操作
import decimal
decimal.Decimal(1)/decimal(7)
# 结果为 Decimal('0.1428571428571428571428571429')
decimal.getcontext().prec = 4
decimal.Decimal(1)/decimal.Decimal(7)
# 结果为Decimal("0.1429"


当处理较大的数据集合时,集合支持一般的数据操作特性可以提供很大帮助
engineers = set(['bob','sue','ann','vic'])
managers  = set(['tom','sue'])

engineers & managers
# set(['vic','sue',tom','bob','ann']
enginners - managers
set(['vic','bob','ann'])

# 集合的方法调用可以实现更为特殊的集合操作,具体细节请查看python库的参考手册3.0后,常量标记{1,2,3}和当前调用set([1,2,3])具有相同功能,并将会成为创建集合对象的另一种方法,这是以后的一个扩展。

#int(N) 函数会省略小数部分,而round(N,小数点后几位默认为0)函数作四舍五入
decimal.Decimal(str(round(5.56,1)))
#会显示 5.56四舍五入留一位后的精确值5.6

#变量总是连接到对象,不会连接到其他变量上。但更大的对象可能连接到其他的对象,例如,列表能够连接到它所包含的对象 

#以具体的术语来讲
#变量是一个系统表的元素,拥有指向对象的连接的空间
#对象是被分配的一块内存,有足够的空间去表现它们所代表的值。在Python中,类型属于对象,而不是变量名
#引用时自动形成的从变量到对象的指针

#从技术上来讲,对象不是这么简单。每个变量都有两个标准的头部信息:一个类型标志去标示这个对象的类型,以及一个引用的计数器,用来决定是不是可以回收这个对象

import copy
X = copy.copy(Y)    #Make a top-level 'shallow' copy of any object Y
x = copy.deepcopy(Y) #Make a deep copy of any object Y: copy all nested parts
import copy
a = [1, 2, 3, 4, ['a', 'b']] #原始对象

b = a #赋值,传对象的引用
c = copy.copy(a) #对象拷贝,浅拷贝
d = copy.deepcopy(a) #对象拷贝,深拷贝

a.append(5) #修改对象a
a[4].append('c') #修改对象a中的['a', 'b']数组对象

print 'a = ', a
print 'b = ', b
print 'c = ', c
print 'd = ', d

输出结果:
a = [1, 2, 3, 4, ['a', 'b', 'c'], 5]
b = [1, 2, 3, 4, ['a', 'b', 'c'], 5]
c = [1, 2, 3, 4, ['a', 'b', 'c']]
d = [1, 2, 3, 4, ['a', 'b']]

#思考下面三条语句。它们会改变A的值吗?
A = ['spam']
B = A
B[0] = 'Shadow'
#   
#   转义符
#   字符串反斜线转义符
#   \newline        忽视(连续)
#   \a              响铃
#   \b              倒退
#   \f              换页
#   \n              换行
#   \r              返回
#   \v              垂直制表符
#   \N{id}          Unicode数据库ID
#   \uhhhh          Unicode 16位的十六进制值
#   \Uhhhh...       Unicode 32位的十六进制值
#   \xhh            十六进制值
#   \ooo            八进制值
#   \O              Null(不是字符串结尾)
#   \other          不转义

#    
#    int函数将字符串转换为数字,而str将数字转换为字符串表达形式(实际上,它看起来和打印出来的效果是一样的)。repr函数以及之前的等效函数,反引号表达式,都能够将一个对象转换为起字符串形式,然而这些返回的对象将作为代码的字符串,可以重新创建对象。
#    一是通过str函数,它会把值转换为合理形式的字符串,以便用户可以理解;而repr会创建一个字符串,它以合法的Python表达式的形式来表示值 。下面是一些例子:
#    
#        >>>print "hello world"
#        hello,world
#        print 10000L
#        10000
#       1. >>> print repr("Hello, world!")  
#       2. 'Hello, world!'  
#       3. >>> print repr(10000L)  
#       4. 10000L  
#       5. >>> print str("Hello, world!")  
#       6. Hello, world!  
#       7. >>> print str(10000L)  
#       8. 10000 
#    
#字符串代码转换
ord('s')        #返回字符串的asii码
chr(115)        #获取ascii码并将其转化为相应的字符






Avatar_small
boat 说:
2010年10月02日 17:36

请问你的代码是怎么放的啊

Avatar_small
星海 说:
2010年10月02日 18:33

撰写文章时,有个syntaxhighlighter按钮阿,点击它,然后选择用的什么语言,下面拷贝进代码,就可以了阿

不过事先需要在插件栏启用“syntaxhighlighter插件哦"

Avatar_small
civaget 说:
2023年12月07日 23:19

Safety and variety go hand in hand at 안전카지노. It's a win-win for players.

Avatar_small
civaget 说:
2023年12月13日 18:29

Unwind and have fun at a 유흥사이트 near you. Find the perfect place to relax and enjoy quality entertainment.

Avatar_small
civaget 说:
2023年12月17日 14:48

For a top-tier casino experience, look no further than 에볼루션카지노. The live dealer games and diverse selection keep me entertained for hours.


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter