Python Day3
一. 基本数据类型
1、数字
int
在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807
V = 1
由数字组成的,主要记下面的一个属性
bit_lenght : 显示该数字所对应的二进制数的位数。
2、布尔值
bool
"hello world"
函数相对应的属性
upper:将字符串内容大写
a="alEx"
print(a.upper())
lower :将字符串内容小写
a="alEx"
print(a.lower())
capitalize:首字母大写
a="alEx"
print(a.capitalize())
strip:去掉两边的空格
a=" alEx "
print(a.strip())
lstrip :去除开始位置的空格
a=" alEx "
print(a.lstrip())
rstrip:去除最后位置的空格
a=" alEx "
print(a.rstrip())
replace:替换摸个内容(里面有两个值,一个是要替换的值,一个是新值)
a=" alEx "
print(a.replace('x','b'))
split : 分割
a=" alEx "
print(a.split("l"))
startswith :以什么开头
name=" aleX"
print(name.startswith("al"))
endswith:以什么结尾
name=" aleX"
print(name.endswith("X"))
len :计算长度
a="alExffsdggdsggsg"
print(len(a))<br>
[ ] : 索引取值
a="alExffsdggdsggsg"
# print(a[5])
# print(a[len(a)-1])
# print(a[2:6])
# print(a[0:-1:3])
for循环取值
a="alExffsdggdsggsg"
for i in a:
print(i)
v1 = "alex" value = v1.upper() print(v1,value)
2. 变小写
v1 = "alEx" value = v1.lower() print(v1,value)
3. 首字母变大写
v1 = "alEx" value = v1.capitalize() print(v1,value)
4. 去除首尾空格
v1 = " asd fasdf " value = v1.strip() print(v1) print(value)
示例:
name = input("请输入用户名:") value = name.strip() if value == 'alex': print('登录成功')
5. 去除左边
v1 = " asd fasdf " value = v1.lstrip()
print(value)
6. 去除右边
v1 = " asd fasdf " value = v1.rstrip()
print(value)
7. 替换
v1 = "SCII第一次以规范标准的型态以规范标准的型态以规范标准的型态" value = v1.replace("标准","**") data = value.replace('第一次','#') print(data)
8. 分割
v1 = "SCII第一次以规范标准的型态以规范标准的型态以规范标准的型态" value = v1.split('第一次') # 列表类型 value = v1.split('标准') # 列表类型 value = v1.split('标准',2) # 列表类型 print(value)
9. 判断当前字符串中是否全部都是数字
v = "123abnj" val = v.isdecimal() print(val)
count = 0 v = "abc123fsdfa3f" for item in v: if item.isdecimal(): count += 1 print(count)
重点: 原值不变
公共功能
1. 计算当前字符串长度
v = "徐芳名sdf" value = len(v) print(value)
2. 根据“索引”“下标”
- 单个值:v[0]
- 多个值:v[起始位置:结束位置]
- 多个值:v[起始位置:结束位置:步长]
PS: -1表示最后
v = "ASCII第一次以规范标准的型态发" value = v[0] print(value)
v = "ASCII第一次以规范标准的型态发"
value = v[0:5] # 0 1 2 3 4
value = v[4:5] # 4
value = v[4:-1] # 4
value = v[4:] # 4
print(value)
v = "ASCII第一次以规范标准的型态发" value = v[1:15:3] print(value)
v = "ASCII第一次以规范标准的型态发" le = len(v) - 1 value = v[le] print(value)
v = "ASCII第一次以规范标准的型态发" length = len(v) index = 0 while index < length: data = v[index] print(data) index += 1
v = "ASCII第一次以规范标准的型态发" for i in v: print(i)
name_list = ['alex', 'seven', 'eric'] 或 name_list = list(['alex', 'seven', 'eric'])
[ ]一种括号包含的内容,这一个整体就叫做列表。列表的元素之间是以都好(,)分开的,而列表里面的元素的元素可以为任意的数据类型
相对应的属性:
append:在列表的尾部添加元素 a=[11,22,3,56] a.append(6) print(a) insert :插入 a=[11,22,3,56] a.insert(2,98) print(a) reverse :反转(将列表的顺序反过来排序) a=[11,22,3,56] a.reverse() print(a) len : 长度 a=[11,22,3,56] print(len(a)) [ ] :索引取值 a=[11,22,3,56] print(a[0:4:2]) 替换: a=[11,22,3,56] a[2:4]=["fang",18] print(a) del:删除 a=[11,22,3,56] del a[2:4] print(a) for循环取值 a=[11,22,3,56] for i in a: print(i) 注意: a=[11,22,31,4,[1,2,3,56],'fafng',88] a[-2]=a[-2].replace("fng",'ng') print(a)
list类中位当前对象提供的功能
1. 在列表尾部追加一个值[修改本身值]
v = [11,22,33,44,"蒋毅"] v.append('李俊义') print(v)
v = [] while True: name = input("请输入用户名:") if name.lower() == 'q': break v.append(name) print(v)
2. 在指定位置插入数据
v = [11,22,33,44,"蒋毅"] v.insert(4,"孙骑兵") print(v)
3. 反转
v = [11,22,33,44] print(v) v.reverse() print(v)
公共功能
1. 计算列表长度
2. 索引(和字符串相同)
3. for循环
4. 替换
5删除
补充:
列表中的元素可以是:数字,字符串,布尔值,列表
例如:
5、元祖
tuple
ages = (11, 22, 33, 44, 55)
或
ages = tuple((11, 22, 33, 44, 55))
()以小括号包含的内容,这一个整体叫做元祖,元祖的元素之间也是以都好(,)分开的,里面的元素可以是任意数据类型
元祖的子元素是不可以操作的,但是元祖的子子元素有可能可以去操作。
相对应的功能只有共有的,没有私有的额共能
tuple类中位当前对象提供的功能 无!
公共功能
1. 长度
2. 索引取值
3. for循环
4. 可以进行嵌套
6、字典(无序)
dict
person = {"name": "mr.wu", 'age': 18} 或 person = dict({"name": "mr.wu", 'age': 18})
v = { "k1":'v1', # 键值对 "k2":'v2', # 键值对 }
{ } 以大括号包含,并且是一个key对应一个value组成的键值对称为字典,字典的元素之间也是以都好(,)分开的。里面的value值是可以任意类型的。
key只能是唯一的,不能重复。字典是无序的。
相对应的属性:
get :取值(以key取值,没有对应的key也不会报错,则会返回一个None,如果给那个key赋一个value值,就会返回这个value值) a={ 'name':"fang", "age":18 } print(a.get('name')) keys:取所有的key(结合for循环使用) a={ 'name':"fang", "age":18 } print(a.keys()) values :取所有的value(结合for循环使用) a={ 'name':"fang", "age":18 } print(a.values()) items :取所有的元素(结合for循环使用) a={ 'name':"fang", "age":18 } print(a.items()) len:计算长度 a={ 'name':"fang", "age":18 } print(len(a)) [ ] :索引取值(以key取值) a={ 'name':"fang", "age":18 } print(a['name']) for循环取值 a={ 'name':"fang", "age":18 } for i in a.keys(): print(i) a={ 'name':"fang", "age":18 } for a in a.values(): print(a) a={ 'name':"fang", "age":18 } for x,y in a.items(): print(x,y)
dict类中位当前对象提供的功能
1. 根据key获取对应的值,key不存在默认取None
公共功能
1. 获取字典长度(键值对的个数)
2. 索引
- 获取
-设置
- 删除
3. for循环
4. 字典嵌套
示例:
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- 数据类型
- 整数(int类) 1 99 90
- v= 1
- v.bit_length()
- 布尔值(bool类) True False
- 0 ""
- v = 2 or 1
- 字符串(str类) "二哥" "三弟"
- 类提供功能:
- 变大小写
- 去除空白
- 替换
- 分割(列表类型)
- 首字母大写
PS: 本身不变化
- 公共功能:
- 长度
- 索引(取)
- for
- 列表(list类) 可变的容器,v = ["xx","oo",123] ["xx","oo","666"]
- 类提供功能:
- 追加
- 插入
PS:本身变化
- 公共功能:
- 长度
- 索引(取,改,删) 特殊的: v[0:2] = ["asdf",]
- for
- 元组(tuple类) 不可变的容器(儿子不可变),("xx","oo","666") PS:元素不可被修改
- 类提供功能:
- 无
- 公共功能:
- 长度
- 索引(取)
- for
- 字典(dict类) {"name": "张勤学","age": 18} {"name": "张勤学","age": 18} PS: 无序
- 类提供功能:
- get
- 公共功能:
- 长度
- 索引(取,删除,修改)
- 循环
- for a in v.keys()
- for a in v.values():
- for a,b in v.items():
====> 相同类的值(指定类的对象)具有相同的功能,功能保存在类中(只有一份)