python字符类型

数字类型:
复数:
x=1+2j #1为实数,2j为虚数
print(x.real)
print(x.imag)

可变:值变,id不变,可变==不可hash
不可变:值变,id就变,不可变==可hash
print(hash(123))

数字类型和字符串类型为不可变

字符串类型:
在'',"",''' '''内定义的一串字符。
mag='hello '

1.按索引取值(正向取+反向取):只能取
print=(mag[0])
print=(mag[-1])

2.切片(顾头不顾尾,步长)也适用于列表
print(mag[0:4]) #0为首,4为尾
  hell

print(mag[1:4:2])#1为首,4为尾,2为步长,隔2取一次。
  l

print(mag[:]) #开始取到结尾

rint(mag[-1::-1]) #倒着取出所有值

3.长度:len
print(len(mag)) 等于 print(mag.__len__()) 

4.成员运算in和not in
print('llo' in mag)
print('llo' not in mag)

5.移除空白strip:只清除2边的空字符
password='   123456    '
pritn(password.strip())
password=input('>>:').strip()

lstrip(去左)rstrip(去右)

6.切分split
user='root:x:0:0::/root:/bin/bash'
res=user.split(':') #默认以空格分隔
print(res[0])
  root

path='C:\\a\\d.txt'
print(path.split('\\',1)) #1为只分隔一次

print(path.rsplit('\\',1)) #从右向左切

7.循环
mag='hel'

n=0
size=len(mag)
while n < size:
     print(mag[n])
     n+=1

for i in mag: 
    print(i)

for i in range(0,5,2):  
    print(i)

8.大小写变化
print('Ajisdf'.lower()) #变小写
print('asdF'.upper())  #变大写

9.startswith(以什么开始),endswith(以什么结尾)
ma=amk thui
print(ma.startswith('a'))
print(ma.endswith('i'))

10.format传值
print('my name is %s  age is %s' %('lx',78))
print('my name is ()  age is ()' format('lx',78))

print('my name is (x)  age is (y)' format(y=78,x='lx'))

print('my name is (0)  age is (1) you love (0)' format('lx',78))

11.join(和split相反)只用于字符串类型的列表拼接
inct='root:x:0:0:/root:/bin/bash'
l=inct.split(':')

print(':'.join(l))

12.replsce
mag='my is koko my is  toto my is bubu'
mag=mag.replsce('my','kawa',1) #默认替换所有,1为一次
print(mag)

13.isdigit判断值为是否为数字类型
password='123'
if password.isdigit():
    password=int(password)

14.find,rfind(从右找),index,rindex(查找),count(统计)
mag='my is ksis'
print(mag.find('is'))
print(mag.index('is'))
print(mag.count('is'))

15.center(填充),ljust(左对齐),rjust(右对齐),zfill(用0填充)
print('hi',center(30,'#'))  #30个字符,不够用#填充。
print('hi',ljust(30,'#'))
print('hi',rjust(30,'#'))
print('hi',zfill(30,'#'))

15.expandtabs  #用多少个空格分离2个单词
print('hello\tword'.expandtabs(10))

16.captalize(首字母大写),swapcase(大小写反转),title(每一个单词的首字母大写)
print('i is kooll'.catpalize())

17.is数字判断
num1=b'2'  #bytes
num2=u'4'  #unicode,python3中无需加u
num3='二'  #中文数字
num4='IV'  #罗马数字

isdigit,(适用bytes,unicode)
print(num1.isdigit())
print(num2.isdigit())
print(num3.isdigit())
print(num4.isdigit())

isdecimal,(适用unicode)
print(num2.isdigit())
print(num3.isdigit())
print(num4.isdigit())

isnumeric,(适用unicode,中文,罗马)
print(num2.isdigit())
print(num3.isdigit())
print(num4.isdigit())

name='mis123'
print(name.isalnum())  #判断字符串是否由字母和数字组成
print(name.isalpho())  #判断字符串是否只由字母组成
print('print'.isidentifier())  #判断关键字
print('abd'.islower())  #判断全是否为小写
print('ASD'.isupper())  #判断大写
print('   '.isspace())  #判断空格
print('Adj'.istitle())  #判断标题,即判断单词的首字母大写

17.列表:
1.按索引取值(正向取+反向取):只能取
2.切片(顾头不顾尾,步长)
3.长度:len
4.循环
5.成员运算in和not in
...
mibs=['cc','aa','rr']
print(list['kasidhui']) #把字符,装换为列表

在列表后添加:
mibs.append(6)

删除:
del mibs[2]
mibs.remove('cc')

删除并取出结果:
resd=mibs.pop(2) #默认从末尾删
print(reds)

循环列表:
for i in mibs:
   print(i)

在列表内插入:
mibs=['cc','aa','rr']
mibs.insert(2,'bb')  #2为位置数,bb为值
print(mibs)
 'cc','aa','bb','rr'

清空列表的值:
print(mibs.claer())

拷贝一个列表:
mm=mibs.copy()

统计列表值的个数:
print(mm.count('aa'))

往列表里加多个值:
hh=['rt','ty']
print(mm.extend(hh))

返回列表的值的位置:
mibs=['cc','aa','rr']
print(mibs.index('aa'))

将列表的值反转:
mibs=['cc','aa','rr']
print(mibs.reverse())
['rr','aa','cc']

将列表的值排序:
hy=[11,2,8,15]
hy.sort()
print(hy)
 [2,8,11,15]

print(hy.sort(reverse=True))
 [15,11,8,2]

x='ahoe'
y='v'

x,>= ,<,<=  父集包含子集
s1={1,2,3,4} #父集
s2={1,2,3}   #子集
print(s1 > s2) #Ture

列表转换为集合:
h=['a','b','c','a','a']
print(seat(h))

difference_update()相减并更新:
s1={1,2,3,4} 
s2={1,2,3} 
print(difference_update(s2))

discard指定删除集合的值
remove删除不在的元素会报错

isdisjoint两个集合没有共同部分时,为真

add,update添加值
.......

分类:
占用空间:集合<元组<列表<字典

存值个数:只能存一个值(数字,字符串),能存多个值(列表,元组,字典)

可变:列表,字典,集合

不可变:数字,字符串,元组

直接访问:数字

有序(序类类型):字符串,列表,元组

key值访问(映射类型):字典

无序:集合,字典

                          字符编码
1.字符按照什么标准存的,就要按照什么标准解码,此处的标准指的就是字符编码

2.unicode--->encode--->gbk  存
  gbk---->decode---->uicode 读

3.python3解释器默认使用的字符编码是UTF-8
  python2解释器默认使用的字符编码是ascii

指定解释器:#coding:gbk

4.pythone2的str就是python3的bytes
  python2的Unicode就是python3的str

当前名称:python字符类型
文章分享:http://hbruida.cn/article/jgehgs.html