一、python基本数据类型

  1,int,整数,主要用来进行数学运算

  2,bool,布尔类型,判断真假,True,False

  3,str,字符串,可以保存少量数据并进行相应的操作(未来使用频率最高的一种类型)

  4,list,列表,用来存储大量数据,用[]表示(里面可以存放各种数据类型)

  5,tuple,元组,不可以发生改变,用()表示

  6,dict,字典,保存键值对,{key : value}也可以保存大量数据

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

二、整数(int)

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

整数可以进行的操作:bit_length() 计算整数在内存中占用的二进制码的长度(很少用)

十进制5转化成二进制是101,长度是3,程序如下:

三、bool类型,取值只有True和False,bool值没有操作

转换问题:

str => int      int(str)

int => str      str(int)

int => bool    bool(int)   0是False,非0是True

bool => int    int(bool)   True是1,False是0

str => bool    bool(str)   空字符串是False,非空字符串是True

bool => str    str(bool)   把bool值转换成相应的“值”,即字符串True或者False

结论:所有的空都是False,所有的非空都是True;例如:0,None,空字符串,空列表,空字典,空集合,空元组。

要想把某数据转换成xxx数据类型,则xxx(数据)即可;

补充:比较下面两个死循环

while 1:

print(“hello world!”)

while True:

print(“hello world!”)

我们可以发现两者的区别是循环条件分别是1和True,我们通常用第一种。因为前者代码较后者更少,且计算机最底层认的是01,True需要转化成01,而1到了计算机底层也是1,所以前者比后者运行快那么一点点。

四、字符串(str)

把字符连成串,在python中用’,”,’’’,”””引起来的内容被称为字符串。

切记:字符串是不可变的对象,所以任何操作对原字符串是不会有任何影响的,每次操作都返回新字符串。

4.1 索引和切片

索引:索引就是下标,下标从0开始,使用[下标]可以获取到每一个字符,如下列代码示例:

切片:我们可以使用下标来截取部分字符串的内容。

语法:str[start : end]

  规则:顾头不顾尾,从start开始,截取到end位置,但不包括end,如下列代码示例:

通过上边知道切片默认是从左向右截取,我们可以给出第三个参数来控制方向,第三个参数叫步长,步长为负数时,则从右往左取值。

  语法:str[start : end : step]

start : 起始位置

end : 结束位置

step : 步长(步长如果是整数,则从左往右取,如果是负数,则从右往左取,默认是1)

如下列代码示例:

4.2 字符串的相关操作方法

s1.capitalize()  # 首字母大写,其他字母都变成小写

s1.lower()  # 全部转换成小写

s1.upper()  # 全部转换成大写,记住!!!

s1.swapcase()  # 大小写互相转换

s1.casefold()  # 转换成小写,和lower相比,casefold()对所有字母都有效,比如东欧的一些字母

s1.title()  # 每个被非字母字符隔开的单词首字母大写

s1.center()  # 居中,

    示例:s5 = “周杰伦”

      ret = s5.center(10 , “*”)

s1.expandtabs()  # 改变\t的长度,更改为8

s1.strip()  # 去掉字符串左右两端空格(还有换行符\n,缩进\t),也可以加参数去掉指定的元素,记住!!!

s1.lstrip()  # 去掉字符串左边空格

s1.rstrip()  # 去掉字符串右边空格

s1.replace(“原字符”,“新字符”)  # 将原字符替换成新字符,也可以再加一个参数指定替换几个,记住!!!

s1.split()  # 字符串按照指定字符切割(注意:如果切割符在左右两端,则切完一定出现空字符串),还可以跟第二个参数,表示根据第几个指定字符分割,记住!!!

  注意:split默认是按照空白切割!具体示例如下:

    a = "al    ex  ha  nishi shui"
lst = a.split()
print(lst)
# 结果为:['al', 'ex', 'ha', 'nishi', 'shui']

4.3 格式化输出
       

4.4 查找

s13.startswith()  # 是否以指定字符开头,记住!!!

s13.endswith()  # 是否以指定字符结尾,记住!!!

s13.count()  # 查找指定字符在字符串中出现的次数

s13.find()  # 查找指定字符的索引,若没有所查找字符,则返回-1

s13.index()  # 求指定字符索引,注意:若找不到,程序会报错

4.5 条件判断

s14.isalnum()  # 是否由字母和数字组成

s14.isalpha()  # 是否由字母组成(包括汉字)

s14.isdigit()  # 是否由数字组成,不包括小数点

s14.isdecimal()  # 这个比较牛,中文数字也能识别

   s14.islower()  # 是否是小写字母

   s14.isupper()  # 是否是大写字母

4.6 计算字符串长度,用法如下示例:

4.7 迭代

我们可以使用for循环来遍历(获取)字符串中的每一个字符。

语法:

    for 变量 in 可迭代对象 :

pass(也存在break和continue)  

    else:

当循环结束的时候会执行

可迭代对象:可以一个一个往外取值的对象。

python 数据类型一 (重点是字符串的各种操作)的更多相关文章

  1. 4. Python数据类型之数字、字符串、列表

    开发过程中,我们需要处理文本.图形.音频.视频.网页等各种各样的数据,不同的数据,需要定义不同的数据类型.在Python中,能够直接处理的数据类型主要有以下几种:数字.字符串.列表.元组.字典.集合等 ...

  2. Python数据类型(数字和字符串)

    1.1 Number(数字) Python可以处理任意大的整数,包括负整数. 浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的.,比如,\(1.23\ti ...

  3. python数据类型一(重点是字符串的各种操作)

    一.python基本数据类型 1,int,整数,主要用来进行数学运算 2,bool,布尔类型,判断真假,True,False 3,str,字符串,可以保存少量数据并进行相应的操作(未来使用频率最高的一 ...

  4. Python数据类型深入学习之字符串

    一. Python字符串 1. 下面来看一下python中常见字符串常量和表达式: Python中用来编写字符串的方法有以下几种: (1) 单引号:'speade' (2) 双引号:"spe ...

  5. python数据类型内置方法 字符串和列表

    1.字符串 内置方法操作# a = 'qqssf'#1. print(a[-1:]) #按索引取,正向从0开始,反向从-1开始# print(len(a)) #取长度# a = 'qqssf'# 2. ...

  6. python数据类型之String(字符串)

    String(字符串) 1.概述 ​ 字符串是以单引号或双引号括起来的任意文本,比如"abc",'xy'等等,请注意''或者""本身只是一种表示方式,并不是字符 ...

  7. Java 常用知识点汇总(数据类型之间转换、字符串的相关操作-截取、转换大小写等)

    1.Java四类八种数据类型 byte:Java中最小的数据类型,在内存中占8位(bit),即1个字节,取值范围-128~127,默认值0 short:短整型,在内存中占16位,即2个字节,取值范围- ...

  8. Python学习总结4:字符串常量与操作汇总

    参考博客:http://www.cnblogs.com/Camilo/archive/2013/09/21/3332267.html http://www.cnblogs.com/SunWentao/ ...

  9. Python学习笔记 (2) :字符串输出、操作、格式化和日期、时间格式化

    一.字符串输出及运算 1.常用输出格式及方法 ')#单引号 ")#双引号 """)#三个引号 1234567890 1234567890 1234567890 ...

随机推荐

  1. python下使用opencv拍照

    首先在命令中安装opencv: pip install opencv-python 然后打开notebook: jupyter notebook 建立文件,写入如下代码: import cv2 cap ...

  2. 《从0到1》深度阅读笔记zz

    没有人能精准地预测未来,我们只知道两件事:一是世界必然会变得不同:二是现在再好的描述也不能让我们看到清晰的未来. 创业者把成就归功于商业模式和机会窗口,归功于创业者本人拥有的资源和能力,但还有一个最重 ...

  3. 2018.11.01 bzoj4325: NOIP2015 斗地主(贪心+搜索)

    传送门 原来一直以为是一道大模拟. 没想到是一道搜索+最优性剪枝 如何搜最优呢? 我们考虑怎么最快出完. 大概是应该尽量出当前能出出去最多的吧. 于是我们选择优先出顺子. 这样做有什么好处呢? 我们会 ...

  4. WPF编程宝典(Pro wpf in c# 2012)(文摘)

    第一部分 基础知识 第1章 WPF概述 第2章 XAML 第3章 布局 第4章 依赖项属性 第5章 路由事件 第二部分 进一步研究WPF 第6章 控件 第7章 Application类 第8章 元素绑 ...

  5. systemC的环境搭建

    window下systemc的环境搭建 安装视频 一.编译SystemC库 1.下载SystemC library source code (systemc-2.3.1版本) 2.解压到工作目录 3. ...

  6. IntellJ IDEA2017 springboot2.0.2 替代@SpringBootApplication方式

    如果不想用@SpringBootApplication,那么可以用@EnableAutoConfiguration 和@ComponentScan替代@SpringBootApplication 详情 ...

  7. Bagging和Boosting的区别

    转:http://www.cnblogs.com/liuwu265/p/4690486.html Bagging和Boosting都是将已有的分类或回归算法通过一定方式组合起来,形成一个性能更加强大的 ...

  8. 19) maven 项目结构:聚集

    Project Aggregation [,æɡrɪ'ɡeɪʃən] https://maven.apache.org/guides/introduction/introduction-to-the- ...

  9. JAVA 面试题及思考

    ==================================== =======学而时习之======================== ===================== 1. p ...

  10. 7-12 How Long Does It Take

    Given the relations of all the activities of a project, you are supposed to find the earliest comple ...