python -- 字符异或交换

来源:互联网 发布:广州小孩学编程 编辑:程序博客网 时间:2024/05/19 20:00

找了很多字符异或交换的例子,

java:

String str = 'sofmenxp'

str[0] ^= str[3]

str[3] ^= str[0]

str[0] ^= str[3]


这样,字符串str 的第一位和第四位就交换成功了,但是想找python的,找了半天也没有字符交换的例子

后来好不容找到一个帖子,终于有点眉目了, ord 和chr 函数

python  demo:

if __name__ == '__main__':    a = 'a'    b = 'b'    a = ord(a)^ord(b)    b = a^ord(b)    a = a^b    a = chr(a)    b= chr(b)    print a,b


这样a,b就交换了。


辅助:


chr(...) 函数

    chr(i) -> character    

    Return a string of one character with ordinal i; 0 <= i < 256.

参数是0 - 256 的一个整数,返回值是当前整数对应的ascii字符。参数可以是10进制也可以是16进制的形式


ord(...)
    ord(c) -> integer
    Return the integer ordinal of a one-character string.

参数是一个ascii字符,返回值是对应的十进制整数




对python 字符串中指定位置的字符做修改操作:

str = list(str)

str [0] = 'p'

str = '.join(str)



1 0
原创粉丝点击