一.基本数据类型

1. int  ==>  整数.主要用来进行数学运算.

2.str  ==>  字符串.可以保存少量的数据,并进行相应的操作.

3.bool  =>  布尔值.判断真假.True,False.

4.list  ==>  列表.用来存放大量数据,用[]表示,里面可以装各种数据类型.

5.tuple  ==>  元组.只读列表,用()表示.

6.dict  ==>  字典,保存键值对,可以用来保存大量数据.

7.set  ==>  集合.保存大量数据,不可以重复.其实就是不保存value的dict.

二.整数(int)

在python3中,所有的整数都是int类型,但在python2中,如果数据量比较大,会使用long类型,但在python3中不存在long类型.

bit_length().返回一个数的二进制长度.

==>a.bit_length后一定要加().

三.布尔值(bool)

取值只有True和False.bool值没有操作.

注:类型转换问题:想把X类型转化成Y类型  ==>  Y()

表示False的内容:0,"",[],tuple,{},None

即所有的空都False,所有的非空都是True.

四.字符串(str)

字符串是不可变的数据类型,不管执行如何操作源字符串是不会改变的,每次操作都是返回新的字符串.

4.1索引和切片

索引下标从0开始,使用[]获取每一个字符,还可以倒着数.

切片:[起始位置:结束位置:步长]  (步长可以没有)

特点:

  1.顾头不顾尾.

  2.默认从左到右取值.

  3.当步长为负时,可以从右往左取值,如果不写,默认值是一.

(1)结果为(顾头不顾尾)

(2)结果为(如果右边已经超过了最大值,相当于截取到最后)

(3)结果为(如果想从头取,开头的值可以不写;如果想取到最后,最后的值可以不写)

(4)原样输出

(5)取不到,不可以这样.

(6)跳着截取

(7)倒着取

(8) 跳着倒着取

4.2字符串的相关操作方法

字符串是不可变的对象,任何操作对源字符串不会有任何的影响

1.s1.capitalize()  ==>  一句话的首字母大写

2.s2.lower() ==>  全部换成小写

s3.upper()  ==>  全部换成大写

#应用,校验用户输入的验证码是否正确

3.s4.swapcase()  ==>  大小写互相转换

4.s5.casefold()  ==> 全部换成小写

  s.casefold()与s.lower()的区别

  s.casefold()可以将很多其他国家的大写字母转换成小写字母(s.lower()无法做到)

5.s6.title()  ==>  每个被特殊字符隔开的字符串首字母大写,其余字母小写.(特殊字符包括空格,/n,/t tab键,除了英文以外,全都算特殊字符)

6.s7.center(30,"*")  ==>  把总的字符串拉长到30,让源字符串居中,其余位置用*补全,*一定要用" "引起来.

7.s8.expandtabs()  ==>  改变/t的长度,默认长度更改为8

8.s9.strip()  ==>  去掉左右两端的空格

 s10.lstrip()  ==>  去掉左边的空格

 s11.rstrip()  ==>  去掉右边的空格

#应用,模拟用户登录,帮助手抖用户去掉空格

s12.strip("abc")  ==>  也可以去掉指定的元素

9.字符串替换

s13.replace("alex","金角大王",2)  2代表替换两次

10,字符串切割

lst=s14.split(",")  ==>用,做刀进行切割,得到的是列表.(也可以用/n进行切割)

#如果刀在字符串的最左端或者最右端,切割之后得到的列表中一定会有一个空字符串.

五.格式化

s15="我叫%s,我今年%s岁了,我喜欢%s " % ("周杰伦","18","昆凌")   #之前的写法

s15="我叫{},我今年{}岁了,我喜欢{} ".format("周杰伦","18","昆凌")   #按位置格式化

s15="我叫{0},我今年{1}岁了,我喜欢{2}" .format ("周杰伦","18","昆凌")  #指定位置

s15="我叫{name},我今年{age}岁了,我喜欢{hobby} " .format (name="周杰伦",age="18",hobby="昆凌")

六.查找

s16=s.startswith("sylar")  ==>  判断是否以sylar开头

s17=s.endswith("sylar")   ==>  判断是否以sylar结尾

s18=s.count("a")  ==>  查找a出现的次数

s19=s.find("sylar")  ==>  查找sylar出现的位置,如果没有返回-1

s20=s.find("a",8,22)  ==>  切片查找

s21=s.index("sylar")  ==>  求索引的位置,如果找不到,程序会报错.

七.条件判断

s21=s.isalnum()  ==>  判断是否由字母和数字组成

s22=s.isalpha()  ==>  判断是否由字母组成

s23=s.isdigit()  ==>  判断是否由数字组成

s24=s.isdecimal()  ==>  判断是否由数字组成

s25=s.isnumeric()  ==>  判断是否由数字组成

八.计算字符串的长度

s23=len(s)

len()是puthon的内置函数,所以访问方式不一样

九.迭代

可以使用for循环来便利字符串中的每一个字符

 s30='今天心情很好'
for c in s30:
print(c)

最新文章

  1. wordpress优化之结合prism.js为编辑器自定义按钮转化代码
  2. 自己手写的自动完成js类
  3. 【Python】if __name__ == "__main__"做了什么?
  4. 自动生成V字型
  5. Eclipse安装svn插件的几种方式
  6. Maven安装配置使用
  7. IOS GCD定时器
  8. VS 扩展推荐
  9. HDU 5724 Chess(国际象棋)
  10. Eziriz.Net.Reactor使用注意事项
  11. Java泛型类与类型擦除
  12. 【转】可执行程序包括BSS段、数据段、代码段
  13. SQLServer .mdf和.ldf文件
  14. Java初认识--函数和数组
  15. 我的mac下有关php扩展的安装
  16. A1021. Deepest Root
  17. cocos2d-x学习之路(三)——精灵与动作
  18. QEMU简单知识 以及磁盘格式转换的简单命令
  19. CsvReader和CsvWriter操作csv文件
  20. MySQL权限问题

热门文章

  1. vue 一些webpack的配置详解
  2. xshell/putty 连接 linux 虚拟机 connection failed 的解决方案
  3. Method and Apparatus for Providing Highly-Scalable Network Storage for Well-Gridded Objects
  4. Verilog分频器
  5. 真的懂了:TCP协议中的三次握手和四次挥手(关闭连接时, 当收到对方的FIN报文时, 仅仅表示对方不在发送数据了, 但是还能接收数据, 己方也未必全部数据都发送对方了。相当于一开始还没接上话不要紧,后来接上话以后得让人把话讲完)
  6. python 左旋转字符串
  7. 微信小程序开发之从相册获取图片 使用相机拍照 本地图片上传
  8. android viewpager fragment切换时界面卡顿解决办法
  9. Matlab Tricks(二十四)—— 将一副图像逆时针旋转 180°
  10. 食谱API自由和开放接口-为了发展自己的健康厨房APP应用