码迷,mamicode.com
首页 > 编程语言 > 详细

python变量str知识

时间:2017-10-18 14:53:58      阅读:255      评论:0      收藏:0      [点我收藏+]

标签:自动   替换   temp   byte   3.5   with   开头   bsp   结果   

创建str字符串的方法如下:

s="123456"
s2=str("123456")
s3=str();
print(s)
print(s2)
print(s3)

#结果
123456
123456
#空格来的,这行

str常用的方法如下:

#去除字符串左边和右边的空格
s=" ljiudoang "
print(s.strip())

#以什么开头
print(s.startswith("lji"))

#把字符串中的某子序列替换成指定的值
print(s.replace("lj","bb"))

#把字符串变成大写
print(s.upper())

#判断字符串是否是字母来的
print(s.isalpha())

str的索引和切片:

str的索引只可以表示一个字符,而str的切片可以表示一个以上的字符

s="ljiudoang "
#索引
print(s[0])
#切片
print(s[0:3])

当用utf-8编码的时候,一个中文等于三个字符。当用gbk编码的时候,一个中文等于二个字符。

3.5的时候,用len和for进行计算的时候,都是通过字符进行计算的。2.7的时候,计算的时候,都是通过字节进行计算的。

#s字符串有四个中文,就是有四个字符。当用for进行循环的时候,一个字符一个循环
s="老陈帅哥"
for temp in s:
    print(temp)

print(len(s))

如何把字符转换为字节。字节默认是16进制的数字,是通过16进制来表示二进制。一个字节等于8个二进制数字。

#s字符串有四个中文,就是有四个字符。当用for进行循环的时候,一个字符一个循环
#通过bytes对一个字符转换为三个字节
s="老陈帅哥"
for temp in s:
    print(temp)
    print(bytes(temp,encoding=utf-8))

#结果输出

老
b\xe8\x80\x81
陈
b\xe9\x99\x88
帅
b\xe5\xb8\x85
哥
b\xe5\x93\xa5

当用for循环对字节列表进行循环的时候,会自动把字节转为10进制表示的

#把字节弄成用10进制表示的
s="老陈帅哥"
for temp in s:
    print(temp)
    byte_list=bytes(temp,encoding=utf-8)
    for i in byte_list:
        print(i)
#结果展现


232
128
129

233
153
136

229
184
133

229
147
165

将十进制数字转为二进制数字,通过bin这个方法把十进制的转为二进制

s="老陈帅哥"
for temp in s:
    print(temp)
    byte_list=bytes(temp,encoding=utf-8)
    for i in byte_list:
        print(i)
        r=bin(i)
        print(r)

将字节转化为字符

#二种编码模式将字符弄成字节

b1=bytes("我爱你",encoding=utf-8)
b2=bytes("你想得美",encoding=gbk)

print(b1)
print(b2)

#将字节转化为字符

b3=str(b1,encoding="utf-8")
b4=str(b2,encoding="gbk")

print(b3)
print(b4)

#结果展现:

b‘\xe6\x88\x91\xe7\x88\xb1\xe4\xbd\xa0‘
b‘\xc4\xe3\xcf\xeb\xb5\xc3\xc3\xc0‘
我爱你
你想得美

 

python变量str知识

标签:自动   替换   temp   byte   3.5   with   开头   bsp   结果   

原文地址:http://www.cnblogs.com/xiaoshabi/p/7686473.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!