一、数据类型
1、数字运算 int()
2、判断 True or False bool()
3、字符串 存储少量数据进行操作 str()
4、列表 存储大量数据 list [ ]
5、元祖 只读列表,数据可以被查询,但是不能被修改,字符串的切片同样适用于元祖 tupe (1,2,3) ('a','c','d')
6、字典 字典是Python中惟一的映射类型,采用键值对(key-value)的形式储存数据。python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典 是无序存储的,且key必须是可哈希的。可哈希表示key必须是不可变类型,如:数字、字符串、元组。
字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素 是通过键来存取的,而不是通过偏移存取。
7、集合 {1,2,3,5,'abc'}
二、字符串的索引与切片
1、索引
s = 'ABCDEFG'
print(s[0])
print(s[4])
注意: 索引初始位为0,对应字符串‘A’,以此类推
2、切片
切片就是通过索引(索引起始位:索引终止位:步长)截取字符串的一段,形成行的字符串(原则上市顾头不顾尾),如果索引起始位和索引终止位没有显示,默认为索引整个字符串,步长默认为1,
a = 'ABCDEFGHIJK'
print(a[0:3])
print(a[2:5])
print(a[0:]) #默认到最后
print(a[0:-1]) #-1就是最后一个
print(a[0:5:2]) #加步长
print(a[5:0:-2]) #反向加步长
,3、字符串常用方法
capitalize() 首字母大写
upper() 全部大写
lower() 全部小写
swapcase() 大小写翻转
title() 每个隔开的单词,首字母都大写。(空格,特殊字符,数字,都算隔开)
A='fda niuou 12ss *ai iu_qw tu_*466qi'
print(A.title())
Fda Niuou 12Ss *Ai Iu_Qw Tu_*466Qi
center() 空白处填充,字符串居中,可以设定填充
a1 = 'qqw1213'
ret2 = a1.center(20,"*")
print(ret2)
******qqw1213*******
# \t前面的补全
# 默认将一个tab键变成8个空格,如果tab前面的字符长度不足8个,则补全8个,如果tab键前面的字符长度超过8个不足16个则补全16个,以此类推每次补全8个。
count() 数字字符中的元素出现的个数 count (“要查看的元素”,检索范围起始位,检索范围终止位)
startswith() 判断是否以xxx开头,可以是单个字母,也可以是一串字符,startswith(“xxx”,检索范围起始位,检索范围终止位),返回结果是布尔值。
endswith() 判断是否以xxx结尾 ,结构与startswith()相同
find() 查找字符串中的元素是否存在,找不到返回 -1 ,程序不会报错
index() 查找字符串中的元素是否存在,找不到会报错!!!
split() 以字符串中的一个元素进行分割,分割完成的列表不包含这个分割元素。split(“指定的分割元素”,制定分割位置)
ret9 = 'title,Tilte,atre,'.split('t')
print(ret9)
ret91 = 'title,Tilte,atre,'.rsplit('t',1)
print(ret91)
['', 'i', 'le,Til', 'e,a', 're,']
['title,Tilte,a', 're,']
format() 三种方法,格式化输出
res='{} {} {}'.format('egon',18,'male')
res='{1} {0} {2}'.format('egon',18,'male')
res='{name} {age} {sex}'.format(sex='male',name='egon',age=18)
strip() 默认删除字符串前后的空格。(字符串中间的空格不受影响)
lstrip() 默认删除字符串前边的空格。
rstrip() 默认删除字符串后边的空格
replace() 替换字符串中的指定元素 replace(“指定字符串中的元素名”,“指定要替换的名字”,指定位置) 位置默认全部更换
name='yang say :i have one tesla,my name is yang'
print(name.replace('yang','a yang',1))
a yang say :i have one tesla,my name is yang
isalnum() 判断字符串由字母和数字组成
isalpha() 判断字符串由数字组成
isdigit() 判断字符串由字母组成
补充
while True :
pass
while 1 : 效率高
pass
str ------> bool
s = "" ------> False #""中间没有空格
非空字符串都是 True
s = "0" --------> True
type() 函数如果你只有第一个参数则返回对象的类型,三个参数返回新的类型对象。
isinstance() 与 type() 区别:
- type() 不会认为子类是一种父类类型,不考虑继承关系。
- isinstance() 会认为子类是一种父类类型,考虑继承关系。
如果要判断两个类型是否相同推荐使用 isinstance()。
语法
以下是 type() 方法的语法:
class type(name, bases, dict)
参数
- name -- 类的名称。
- bases -- 基类的元组。
- dict -- 字典,类内定义的命名空间变量。
返回值
一个参数返回对象类型, 三个参数,返回新的类型对象。
实例
以下展示了使用 type 函数的实例:
# 一个参数实例
>>> type(1)
<type 'int'>
>>> type('runoob')
<type 'str'>
>>> type([2])
<type 'list'>
>>> type({0:'zero'})
<type 'dict'>
>>> x = 1
>>> type( x ) == int # 判断类型是否相等
True
# 三个参数
>>> class X(object):
... a = 1
...
>>> X = type('X', (object,), dict(a=1)) # 产生一个新的类型 X
>>> X
<class '__main__.X'>
type() 与 isinstance()区别:
class A:
pass
class B(A):
pass
isinstance(A(), A) # returns True
type(A()) == A # returns True
isinstance(B(), A) # returns True
type(B()) == A # returns False