您的位置:首页 > 编程语言 > Python开发

python一些问题

2011-04-26 14:17 330 查看
python一些小问题:

1 交换两个变量的值:

a,b =b,a

2 字符串的格式化与字符串的连接:

>>> uid = "sa"

>>> pwd = "secret"

>>> print pwd + " is not a good password for " + uid 1

secret is not a good password for sa

>>> print "%s is not a good password for %s" % (pwd, uid) 2

secret is not a good password for sa

>>> userCount = 6

>>> print "Users connected: %d" % (userCount, ) 3 4

Users connected: 6

>>> print "Users connected: " + userCount 5

Traceback (innermost last):

File "<interactive input>", line 1, in ?

TypeError: cannot concatenate 'str' and 'int' objects

1 + 是字符串连接操作符。

2 在这个简单例子中,字符串格式化实现与连接一样的结果。

3 (userCount, ) 是一个只包含一个元素的 tuple。是的,语法有一点奇怪,但是使用它的理由就是:显示地指出它是一个 tuple,而不是其他。实际上,当定义一个 list、tuple 或 dictionary 时,您可以总是在最后一个元素后面跟上一个逗号,但是当定义一个只包含一个元素的 tuple 时逗号是必须的。如果省略逗号,Python 不会知道 (userCount) 究竟是一个只包含一个元素的 tuple 还是变量 userCount 的值。

4 字符串格式化通过将 %s 替换成 %d 即可处理整数。

5 试图将一个字符串同一个非字符串连接会引发一个异常。与字符串格式化不同,字符串连接只能在被连接的每一个都是字符串时起作用。

3list映射:

>>> li = [1,9,8,4]

>>> [elem*2 for elem in li]

[2, 18, 16, 8]

>>>

>>> li

[1, 9, 8, 4]

字典的keys,values,item方法:

>>> params = {"dd":"ddsff","a":"fdf"}

>>> params.keys()

['a', 'dd']

>>> b=params.values()

>>> print b

['fdf', 'ddsff']

>>>

>>>

>>>

>>> params.items()

[('a', 'fdf'), ('dd', 'ddsff')]

>>>

>>>

>>>

join
只能用于元素是字符串的 list;它不进行任何的强制类型转换。连接一个存在一个或多个非字符串元素的 list
将引发一个异常。



split
与 join
正好相反,它将一个字符串分割成多元素 list。注意,分隔符 (“;

”) 被完全去掉了,它没有在返回的 list 中的任意元素中出现。


split
接受一个可选的第二个参数,它是要分割的次数。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: