python学习3-数据类型之整型、字符串和布尔值

数据类型

python3支持的数据类型共有6种:

1 Number
2 String
3 List
4 Tuple
5 Set
6 Dictionary

数字类型共有三种:

1 int
2 float
3 complex

python2中还有long类型,但是python3中将其整合到了int类型里,即python3中无long类型。

整型(int)魔法

1. 将字符串转换为数字int()

num = ""
v1 = int(num,base=2)
v2 = int(num,base=8)
v3 = int(num,base=16)
print(v1,v2,v3)

2. 当前数字的二进制至少用几位表示bit_length()

num = ""
v1 = int(num,base=2)
v2 = int(num,base=8)
v3 = int(num,base=16)
print(v1,v2,v3) v4 = v1.bit_length()
print(v4)

字符串(string)魔法

1. 英文字母变小写lower(),大写upper()

2. 所有字符变小写casefold(),首字母大写capitalize()

3. 设置宽度并将内容居中,空白位置填充默认为无center(self,width,fill=None)

  空白位置只能填充一个字符:*,9,中

  ljust():左侧填充,可指定填充符号

  rjust():右侧填充,可指定填充符号

  zfill():左侧填充,但只能填充0

4.计算字符在字符串里面出现的次数count('str')

  更多参数:start=5, end = 10,搜索位置在字符串的范围,字符串从0开始编号

  [start, end)为左闭右开区间

5. 是否以某字符结尾endswith('str'),也可设置开始与结束位置

6. 是否以某字符开头startswith('str'),也可设置开始与结束位置

7. 寻找某字符第一次出现的位置find('str'),也可设置开始与结束位置

  返回值为-1意为没找到

  index也可进行寻找,但是若找不到会直接报错,可舍弃此命令

8. 将用{}括起来的内容(占位符)进行赋值替换,format(name = 'str')

test ='i am {name}, age {a}'
print(test)
v=test.format(name=’alex’,a=19)
print(v)

另外一种书写方式,按照字典方式:

test ='i am {name}, age {a}'
print(test)
v=test.format_map({"name":’alex’,"a":19})
print(v)

9. 判断字符串中是否仅包含字母和数字isalnum()

10. 扩展制表符的占位数expandtabs(num)

test = "1234567\t8"

输出:

1234567     8

7与空格共占6个字符,用于输出制表

11. 判断字符串是否只包含字母isalpha()

  汉字也可以

12. 判断字符串是否只包含数字

  isdecimal(),十进制数

  isdigit(),特殊数字符号

  isnumeric(),中文数字也支持

13. 判断是否可以作为标识符isidentifier()

14. 判断大小写

  isupper()

  islower()

15. 判断输出是否包含转义字符isprintable()

  转义字符包含:\t, \n等

16. 判断是否全部是空格isspace()

17. 判断是否是标题(所有单词首字母全部大写)

  istitle()

  title(),将字符串转换为标题

18. 将字符串中的每一个元素按照分隔符进行分割  join()

t = "asdfghjkl"
v = "_"
print(v.join(t))

输出为:

>>> a_s_d_f_g_h_j_k_l

19. 消除空格

lstrip():去除左侧空格、\t、\n

rstrip():去除右侧空格、\t、\n

strip():去除全部空格、\t、\n

可指定需要去除的字符

t = "xxalex"
t.lstrip("xx")

注:匹配子序列,只要有符合的子序列均可以去除

t = "xalex"
t.rstrip("sdfgex")

输出:

>>>xal

注:循环匹配并去除

20. 根据对应关系进行字符串的替换

v = "asceilwacbrycbalyIVCNAE"
m = str.maketrans("aeiou","")
v.translate(m)

21. 分割字符串

test = "testdcbabckyreuvsscebs"
test.partition("s")
test.rpartition("s")
test.split('s',2)
test.rsplit('s',2)

partition()只将字符串分割为三份,且分割符号保留

split()将字符串按照分割符全部分割,且分割符不保留,可指定分割的个数

22. 分割换行符,true保留换行符,false去掉换行符splitlines()

23. 大小写转换swapcase()

24. 替换字符replace("str",'xxx',num)

列表(list)

列表中包含的元素可以是 数字,字符串,列表,布尔值,列表等所有数据类型

列表支持索引与切片,且方法与字符串相同

列表也支持for, while循环

列表在内存中以链表的形式存储,其元素可以容易的修改

通过索引、切片进行修改:

li = [12,25,55,"alex",[11,22,"picth"]]

li[1:3] = [120,90]

灰魔法

1. 字符串索引、切片

test = "alex"

test[0]
test[1]
test[2]
test[3] test[0:1]
test[0:-1]

区间为左闭右开,-1表示最后一个元素,所以test(0:-1)可以输出前三个字母(不包含最后一个字母)

2. len获取当前字符串由几个字符组成,中文亦可(一个汉字一个字符)

3. for循环依次输出字符串里面的各个字符

test = "cbuabvrlvbaehubrf"

for i in test:
print(i)

  for循环仍然支持break与continue

4. 创建连续数字range(a,b,sep)

for i in range(100):
print(i)

  其中[a,b)为左闭右开区间,sep为步长

深灰魔法

1. 字符串一旦创建,不可修改,且一旦修改,会创建一个新的字符串来存储

2. 数据类型转换:

b = int(a)

b = str(a)

b = bool(a)

3. 可迭代对象:可以被for循环的对象

for i in 可迭代对象

4. bool值补充

"",空字符串为False

"    ",只要字符串有值就为True

数字0,False

其他数字,True

python学习3—数据类型之整型、字符串和布尔值的更多相关文章

  1. 基础数据类型:整型int、布尔值bool、字符串str、与for循环

    1.整型 int() p2 long 长整型 p3 全部都是整型 2.布尔值 bool() True --- int() int(True) int() --- True bool(int) 注意点: ...

  2. python学习6—数据类型之集合与字符串格式化

    python学习6—数据类型之集合与字符串格式化 1. 使用id()可以查看一个变量的内存地址: name = 'alex' id(name) 2. 进制转换 十进制转换为二进制等: a = 10 # ...

  3. 上篇:python的基本数据类型以及对应的常用方法(数字、字符串、布尔值)

    为了日后便于查询,本文所涉及到的必记的基本字符串方法如下: "分隔符".join(字符串)    #将字符串的每一个元素按照指定分隔符进行拼接.split("字符串&qu ...

  4. Python入门篇-基础数据类型之整型(int),字符串(str),字节(bytes),列表(list)和切片(slice)

    Python入门篇-基础数据类型之整型(int),字符串(str),字节(bytes),列表(list)和切片(slice) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Py ...

  5. Python学习 之 数据类型(邹琪鲜 milo)

    1.Python中的数据类型:数字.字符串.列表.元组.字典 2.数字类型包括整型.长整型.浮点型.复数型 type(number):获取number的数据类型 整型(int):范围:-2,147,4 ...

  6. python教程1:Python基础之数据类型和变量、字符串和编码

    视频链接:http://www.bilibili.com/video/av10730372/ 我是在Linux下玩python的,Linux下默认安装python,直接打个pyhon3就好了,pyth ...

  7. 工具函数判断data为整型字符串

    /** * 如果data是整型字符串,则转为整型,否则原样返回 * @param {*} data 整型字符串 */ export const stringToInt = (data) => { ...

  8. JS规则 多样化的我(变量赋值)我们使用"="号给变量存储内容,你可以把任何东西存储在变量里,如数值、字符串、布尔值等,

    多样化的我(变量赋值) 我们可以把变量看做一个盒子,盒子用来存放物品,那如何在变量中存储内容呢? 我们使用"="号给变量存储内容,看下面的语句: var mynum = 5 ; / ...

  9. Python数据类型(整型,字符串类型,列表)

    一:数据的概念 1.数据是什么 x=10,数据10就是我们要存储的数据. 2.为什么数据要分不同的种类? 因为数据是用来表示状态的,不同的状态就要用不同类型的数据去表示. 3:Python中常见的数据 ...

随机推荐

  1. eclipse中svn的各种图标详解

    参考:http://blog.sina.com.cn/s/blog_637810b101018xw0.html - 已忽略版本控制的文件.可以通过Window → Preferences → Team ...

  2. 炼数成金数据分析课程---10、python中如何画图

    炼数成金数据分析课程---10.python中如何画图 一.总结 一句话总结: 主要matplotlib库,pandas中也可以画一些基础图 大纲+实例快速学习法 1.matplotlib的最简单画图 ...

  3. 转-C++之虚函数不能定义成内联函数的原因

    转自:https://blog.csdn.net/flydreamforever/article/details/61429140 在C++中,inline关键字和virtual关键字分别用来定义c+ ...

  4. JAVA中HashMap相关知识的总结(一)

    Java中HashMap在jdk1.7和jdk1.8中的区别点: 在jdk1.7中是用数组+链表形式存储,1.8采用数组+链表/红黑树形式 Jdk1.8中由链表转为红黑树是长度大于8,由红黑树转为链表 ...

  5. SPOJ VFMUL - Very Fast Multiplication (FFT)

    题目链接:VFMUL - Very Fast Multiplication Description Multiply the given numbers. Input n [the number of ...

  6. el-select 1.4.x版本实现2.x.x版本的reserve-keyword功能

    今天在维护以前的项目时,发现了一个小bug,其实也不算是bug,只是客户对这个控件的体验不是很满意. 我们在element 2.x.x的版本的官方文档中可以发现el-select组件的属性中比1.x. ...

  7. mysql(自动添加系统时间)timestamp类型字段的CURRENT_TIMESTAMP与ON UPDATE CURRENT_TIMESTAMP属性

    timestamp有两个属性,分别是CURRENT_TIMESTAMP 和ON UPDATE CURRENT_TIMESTAMP两种,使用情况分别如下: 1.CURRENT_TIMESTAMP 当要向 ...

  8. 74HC595点亮8个LED灯

    一.原理介绍 595有两个寄存器,都是8位的,如下所示: 595是串入并出带有锁存功能移位寄存器,它的使用方法简单: - -  在正常使用时 /SCLR接高电平,/G接低电平. - -  从SER每输 ...

  9. Linux (raspberry) 安装 telnet server

    可能由于内核或者版本问题 ,网上的telnet服务器安装教程,总是无法安装成功 ,下面说说基于debian发行版(树莓派)telnet 服务器端的安装,便于以后的远程访问. 具体可以通过netstat ...

  10. Tomcat7安装和配置以及优化

    安装Tomcat7 下载安装方法一: 直接下载Tomcat7: wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-7/v7.0 ...