python_数据类型基本操作(2)

概览:

第1章 基础数据类型宏观的初识
第2章 int
第3章 bool
第4章 str
4.1 python体现形式
4.2 引号用法
4.3 字符串运算
4.3.1 字符串相加
4.3.2 字符串相乘
4.4 字符串参数
4.5 字符串取值
4.5.1 索引
4.5.2 切片
4.6 判断字符串组成
第5章 list()
5.1 列表操作(增)
5.2 列表操作(删)
5.3 列表操作(改)
5.4 列表操作(查)
5.5 基础练习
5.6 方法练习
5.7 列表的嵌套
第6章 tuple
6.1 元组的元素性质
6.2 range
第7章 dict
7.1 定义
7.2 字典操作增)
7.3 字典操作(删)
7.4 字典操作(改)
7.5 字典操作(查)
7.6 字典的嵌套
第8章 比较运算符
8.1 比较运算逻辑
第9章 格式化输出
9.1 %用法
9.2 format(三种方法)
第10章 公共方法
10.1 len
10.2 count
第11章 数据类型之间的转换
11.1 list转换str
11.2 str转换int
11.3 int转换 str(1)
11.4 str转换 int(1)
11.5 int转换bool
11.6 bool 转换int
11.7 str转换bool
第12章 基础数据类型的补充
第13章 拾遗
13.1 分割元素的坑
13.2 %占位符
13.3 比较预算优先级

正文:

第1章 基础数据类型宏观的初识

l  int:数字,加减产出等计算。

l  str:字符串,存储少量的数据,进行简单的操作。

l  list:列表,存储大量的数据

l  tuple:元组,只读列表,

l  dict:字典,查询速度快,存储的是关系型数据

例:

dict:{

'name':'san'

'age':1000,

}

l  set:集合,对照两个数据的对应关系

第2章 int

解释:数字主要是用于计算用的,使用方法并不是很多

例:

v = 10

p = 11

print(v+p)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

21

第3章 bool

解释:两种状态True False

例:

v = 1

print(v.__bool__())

 

p = 0

print(bool(p))

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

True

False

第4章 str

4.1 python体现形式

例:引号里面的内容。

count = '123'

print(count,type(count))

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

123 <class 'str'>

4.2 引号用法

a)单双相结合

print("I'm a good boy.")

输出

I'm a good boy.

b)三引号的分行打印

'''

写一个购物车,写完了的写三级菜单。

购物车

功能要求:

要求用户输入总资产,例如:2000

显示商品列表,让用户根据序号选择商品,加入购物车

购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。

goods = [{"name": "电脑", "price": 1999},

           {"name": "鼠标", "price": 10},

      {"name": "游艇", "price": 20},

      {"name": "美女", "price": 998},

]

'''

4.3 字符串运算

4.3.1 字符串相加

n = "abc"

m = "def"

print(n + m)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

abcdef

4.3.2 字符串相乘

n = "abc"

m = "def"

print(n * 3)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

abcabcabc

4.4 字符串参数

4.4.1 ++ capitalize

解释:首字母大写

n = "abc"

m = "def"

print(n.capitalize())

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

Abc

4.4.2 ++ swapcase

解释:大小写反转

m = "Def"

print(m.swapcase())

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

dEF

4.4.3 + title

解释:非字母隔开的单词首字母大写

m = "Def gh IjK lmN"

print(m.title())

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

Def Gh Ijk Lmn

4.4.4 + center

解释:设置总长度并居中

n = "abc"

m = "Def gh IjK lmN"

print(n.center(10,'*'))

输出

***abc****

4.4.5 +++upper /lower

解释:大写全小写

code = 'AwEqr'

username = input('>> 请输入用户名: ')

your_code = input('>> 请输入验证码: ')

if username ==  '王' and your_code.upper() == code.upper():

    print('登录成功')

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

>> 请输入用户名: wang

>> 请输入验证码: aweqr

登录成功

4.4.6 +++startswith endswith

解释:判断以..开头或以..结尾,整体与个体都可以

m = "Def gh IjK lmN"

m1 = m.startswith('Def')

print(m1)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

True

4.4.7 +++ s.strip()

解释:剔除前后空格,换行符,制表符,剔除内容也可以自定制

列1):剔除空格和制表符

s = '   wangXiaoxiao\t'

print(s)

print(s.strip())

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

   wangXiaoxiao

wangXiaoxiao

例2):实际应用输出剔除空格

code = 'AwEqr'

username = input('>> 请输入用户名: ').strip()

your_code = input('>> 请输入验证码: ').strip()

if username ==  'wang' and your_code.upper() == code.upper():

    print('登录成功')

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

>> 请输入用户名:   wang

>> 请输入验证码: aweqr

登录成功

例3):剔除自定制

s = 'abc countname abc'

s1 = s.strip('abc')

print(s1)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

 countname

4.4.8 ++lstrip

例:剔除左侧匹配字符

s = 'abc countname abc'

s1 = s.lstrip('abc')

print(s1)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

 countname abc

4.4.9 +++replace

解释:替换

例1)

s = 'my name is supman ,supman is good man'

s1 = s.replace('supman','chaoren')

print(s1)

输出:

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

my name is chaoren ,chaoren is good man

例2)只替换一处

s = 'my name is supman ,supman is good man'

s1 = s.replace('supman','chaoren',1)

print(s1)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

my name is chaoren ,chaoren is good man

4.4.10 ++++ split

本章重点:分割字符串转换为列表

1)split:按某种格式进行分割,默认以空格进行切分,输出结果为列表的形式

s = 'my name is supman ,supman is good man'

s1 = s.split()

print(s1)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

['my', 'name', 'is', 'supman', ',supman', 'is', 'good', 'man']

2)既有中文逗号也有英文逗号分割方法:替换成英文再分割

s = 'my name is supman ,supman ,is good man'

s1 = s.replace(',',',')

print(s1)

print(s1.split(','))

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

my name is supman ,supman ,is good man

['my name is supman ', 'supman ', 'is good man']

4.4.11 +++find

解释:find找不到返回-1,index找不到会报错

s = 'superman'

s1 = s.find('e')

s2 = s.find('w')

print(s1,type(s1))

print(s2)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

3 <class 'int'>

-1

4.4.12 +++index

s = 'superman'

s1 = s.index('w')

print(s1)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

Traceback (most recent call last):

  File "D:/python/untitled2/python_auto/lianxi2.py", line 147, in <module>

    s1 = s.index('w')

ValueError: substring not found

4.5 字符串取值

4.5.1 索引

s = 'sadfdsfdsjfkdsf'

s1=s[0]

print(s1,type(s1))

输出

s <class 'str'>

倒序查找

s1=s[-1]

print(s1,type(s1))

头不顾尾

s2 = s[0:3]

print(s2)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

sad

4.5.2 切片

解释:s[起始多音:结束索引+1:步长]

1)全取

s3 = s[:-1]

s4 = s[:]

print(s3)

print(s4)

输出

sadfdsfdsjfkds

sadfdsfdsjfkdsf

2)步长

s5 = s[:5:2]

#倒序切片要在后面加步长

s6 = s[-1:-5:-1]

s6 = s[11::1]

print(s6)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

kdsf

3)倒序取全

s5 = s[:-1]

print(s5)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

sadfdsfdsjfkds

4.6 判断字符串组成

例:

name = '123'

#判断字符串是由字母或者数字组成

print(name.isalnum())

#判断是由字符串组成

print(name.isalpha())

#判断是否有数字组成

print(name.isdigit())

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

True

False

True

第5章 list()

l  列表按照切片切出来的是列表

l  列表按照索引取值,要看原来属性

5.1 列表操作(增)

5.1.1 append()

l = ['chuang','qian','ming','yue']

l.append('guang')

print(l)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

['chuang', 'qian', 'ming', 'yue', 'guang']

5.1.2 insert

解释: 按照索引添加

l.insert(0,'libai')

print(l)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

['libai', 'chuang', 'qian', 'ming', 'yue']

Process finished with exit code 0

5.1.3 extend

解释:迭代追加,最小组成元素被逗号隔开,追加到最后

l.extend(['yi','shi','di','shang','shuang'])

print(l)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

['chuang', 'qian', 'ming', 'yue', 'yi', 'shi', 'di', 'shang', 'shuang']

5.2 列表操作(删)

5.2.1 pop(返回值)

解释:按照索引删除,并且有返回值

l.pop(0)

print(l)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

['qian', 'ming', 'yue']

返回值:为删除的元素

print(l.pop(0))

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

chuang

5.2.2 remove

解释:按照元素删除

l.remove('chuang')

print(l)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

['qian', 'ming', 'yue']

5.2.3 clear

解释:清空列表,将整个列表在内存中删除

l.clear()

print(l)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

[]

5.2.4 del

解释:按照切片删

del l[2:]

print(l)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

['chuang', 'qian']

5.3 列表操作(改)

5.3.1 按索引改

l[0] = '床'

print(l)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

['床', 'qian', 'ming', 'yue']

5.3.2 按照切片改

解释:按照区域将内容清空迭代添加

l[:] = '床','前','明','月'

print()

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

['床', '前', '明', '月']

2)添加步长进行修改

l[:3:2] = '床','月'

print(l)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

['床', 'qian', '月', 'yue']

5.4 列表操作(查)

5.4.1 for 循环看

for i in l :

    print(i)

5.4.2 sort

解释:列表正序排序(需要数字组成)

l = [9787,83,202,10]

l.sort()

print(l)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

[10, 83, 202, 9787]

5.4.3 sort(reverse=True)

解释:倒序排序(需由数字组成)

l = [9787,83,202,10]

l.sort()

print(l)

输出

D:/python/untitled2/python_auto/lianxi2.py

[9787, 202, 83, 10]

5.4.4 reverse

解释:翻转

l = [9787,83,202,10]

l.reverse()

print(l)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

[10, 202, 83, 9787]

5.5 基础练习

列表取值

li = [1,(2,3),2,3,4,5,6,]

l1 = li[:3]

print(l1)

print(li[0],type(li[0]))

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

[1, (2, 3), 2]

1 <class 'int'>

5.6 方法练习

l = ['chuang','qian','ming','yue']

#追加

l.append('guang')

#按照索引添加

l.insert(1,'ok')

#按照元素添加

l.extend(['yi','shi','di','shang','shuang'])

#查看

print(l)

#按照索引删除

l.pop(1)

#按照切片删除

del l[5:]

#遍历查询

for i in l :

#输出   

    print(i)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

['chuang', 'ok', 'qian', 'ming', 'yue', 'guang', 'yi', 'shi', 'di', 'shang', 'shuang']

chuang

qian

ming

yue

guang

5.7 列表的嵌套

例1):将wang 首字母大写

l = [1,2,'wang',['xiao','dong',100],8]

l[2] = l[2].capitalize()

print(l)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

[1, 2, 'Wang', ['xiao', 'dong', 100], 8]

例2)让100通过数字加1的形式101

l[3][-1] = str(l[3][-1] + 1)

print(l)

输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

[1, 2, 'wang', ['xiao', 'dong', '101'], 8]

第6章 tuple

6.1 元组的元素性质

解释:直属元组中的元素是只读的

例1):元组中插入元素报错

tu1=(12,34,[5,6],78)

tu1[0].append(666)

print(tu1)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

Traceback (most recent call last):

  File "D:/python/untitled2/python_auto/lianxi2.py", line 203, in <module>

    tu1[0].append(666)

AttributeError: 'int' object has no attribute 'append

例2):元组内含列表,在列表中插入元素可以

tu1=(12,34,[5,6],78)

tu1[2].append(666)

print(tu1)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

(12, 34, [5, 6, 666], 78)

6.2 range

6.2.1 正向取值

解释:顾首不顾尾,可以加步长

for i in range(2,12,3):

    print(i)

输出

D:/python/untitled2/python_auto/lianxi2.py

2

5

8

11

6.2.2 反向取值

for i in range(12,1,-3):

    print(i)

输出

D:/python/untitled2/python_auto/lianxi2.py

12

9

6

3

第7章 dict

7.1 定义

字典:

l  key-values存储,可以存储大量的关系型数据,查询速度非常快

l  字典的键,必须是唯一的,不可以重复,而且是不可变的数据类型,value可以为任意数据类型或者对象

l  数据类型:

                     不可变类型(可哈希):int str tuple bool

           可变类型(不可哈希):dict lis set

l  在3.5版本包括3.5之前,都是无序的

7.2 字典操作(增)

7.2.1 依键加值

解释:无则增加有则修改

dic = {

  

    'name':'superman',

    'age':18,

    'sex':'man',

 

}

 

dic['hobby'] = 'fly'

print(dic)

输出

D:/python/untitled2/python_auto/lianxi2.py

{'name': 'superman', 'age': 18, 'sex': 'man', 'hobby': 'fly'}

7.2.2 setdefault(无则添加)

dic = {

 

    'name':'superman',

    'age':18,

    'sex':'man',

 

}

 

dic['hobby'] = 'fly'

dic.setdefault('high',180)

print(dic)

输出

D:/python/untitled2/python_auto/lianxi2.py

{'name': 'superman', 'age': 18, 'sex': 'man', 'hobby': 'fly', 'high': 180}

7.2.3 setdefault(有则不改)

dic = {

 

    'name':'superman',

    'age':18,

    'sex':'man',

 

}

 

dic['hobby'] = 'fly'

dic.setdefault('name','超人')

print(dic)

输出

D:/python/untitled2/python_auto/lianxi2.py

{'name': 'superman', 'age': 18, 'sex': 'man', 'hobby': 'fly'}

7.3 字典操作(删)

7.3.1 pop(返回值)

解释:按照键来删除,删除整个键值对;没有键值报错,有返回值,返回值

dic = {

 

    'name':'superman',

    'age':18,

    'sex':'man',

 

}

 

dic['hobby'] = 'fly'

print(dic.pop('name'))

print(dic)

输出

D:/python/untitled2/python_auto/lianxi2.py

superman

{'age': 18, 'sex': 'man', 'hobby': 'fly'}

7.3.2 无则报错

dic.pop('name1')

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

Traceback (most recent call last):

  File "D:/python/untitled2/python_auto/lianxi2.py", line 226, in <module>

    dic.pop('name1')

KeyError: 'name1

7.3.3 解决报错,加返回值

dic.pop('name1',None)

print(dic)

输出

D:/python/untitled2/python_auto/lianxi2.py

{'name': 'superman', 'age': 18, 'sex': 'man', 'hobby': 'fly'}

7.3.4 3.5版本区别

解释:3.5以前随机删有返回值,返回元组

dic = {

 

    'name':'superman',

    'age':18,

    'sex':'man',

 

}

 

dic['hobby'] = 'fly'

print(dic.popitem())

print(d

输出

D:/python/untitled2/python_auto/lianxi2.py

('hobby', 'fly')

{'name': 'superman', 'age': 18, 'sex': 'man'}

7.3.5 clear

7.3.6 del

1.删除整个字典

2.按照键去删除键值对:用pop比较好

7.4 字典操作(改)

7.4.1 依据键来改

dic = {

 

    'name':'superman',

    'age':18,

    'sex':'man',

 

}

dic['name'] = '超人'

print(dic)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

{'name': '超人', 'age': 18, 'sex': 'man'}

7.4.2 update

解释:覆盖并更新

dic = {

 

    'name':'superman',

    'age':18,

    'sex':'man',

 

}

dic1 ={

    'name': '超人',

    'age': 18,

    'sex': '男',

}

dic.update(dic1)

print(dic)

输出

D:/python/untitled2/python_auto/lianxi2.py

{'name': '超人', 'age': 18, 'sex': '男'}

7.5 字典操作(查)

7.5.1 根据key

查有则输出:

dic1 ={

    'name': '超人',

    'age': 18,

    'sex': '男',

}

print(dic['name'])

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

超人

无则报错:

print(dic['name1'])

输出

line 230, in <module>

    print(dic['name1'])

KeyError: 'name1'

7.5.2 get(返回值)

解释:get取值不会报错会有返回值,并且可以设定返回值

dic1 ={

    'name': '超人',

    'age': 18,

    'sex': '男',

}

print(dic1.get('name1'))

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

None

7.5.3 for循环

dic.keys()#类似于列表的容器,可以for循环,没有索引,默认打印键

dic = {

 

    'name':'superman',

    'age':18,

    'sex':'man',

 

}

for key in dic.keys():

    print(key)

输出

D:/python/untitled2/python_auto/lianxi2.py

name

age

sex

7.5.4 dic.values()

print(dic.values())

输出

D:/python/untitled2/python_auto/lianxi2.py

dict_values(['superman', 18, 'man'])

7.5.5 dic.items()

print(dic.items())

输出

D:/python/untitled2/python_auto/lianxi2.py

dict_items([('name', 'superman'), ('age', 18), ('sex', 'man')])

7.5.6 k,v赋值

解释:分别赋值取出key,velus

dic = {

 

    'name':'superman',

    'age':18,

    'sex':'man',

 

}

for k,v in dic.items():

      print(k,v)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

name superman

age 18

sex man

7.6 字典的嵌套

例1:对字典中的列表追加一个元素'guanyu'

dic = {'name_list':['chaoren','zhizhuxia'],1:{...}}

dic['name_list'].append('guanyu')

print(dic)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

{'name_list': ['chaoren', 'zhizhuxia', 'guanyu'], 1: {Ellipsis}}

例2:在循环一个字典时,不要改变字典的大小

dic = {'k1':'v1','k2':'v2','k3':'v3','name':'chaoren'}

for  k  in dic:

    if 'k' in k:

        dic.pop(k)

print(dic)

输出

\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

Traceback (most recent call last):

  File "D:/python/untitled2/python_auto/lianxi2.py", line 233, in <module>

    for  k  in dic:

RuntimeError: dictionary changed size during iteration

例3:解决方法

dic = {'k1':'v1','k2':'v2','k3':'v3','name':'chaoren'}

l1 = []

for i in dic:

    if 'k' in i:

        l1.append(i)

print(l1)

for i in l1:

    del dic[i]

print(dic)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

['k1', 'k2', 'k3']

{'name': 'chaoren'}

第8章 比较运算符

8.1 比较运算逻辑

优先级: () > not > and > or

print(1 > 2 and 3 < 4 or 4 > 5 and 2 > 1 or 9 < 8)

 

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

False

or巧记:

#x or y is Trus ,return x

print(3 or 4)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

3

第9章 格式化输出

9.1 %

例1:

name = input('>>请输入你的名字: ')

age = input('>>请输入你的年龄: ')

job = input('>>请输入你的职业: ')

hobbie = input('>>请输入你的爱好: ')

 

msg ='''_______________info of %s____________

Name    :%s

Age     : %d

Job     : %s

Hobbie  : %s

_______________________end___________

'''\

    % (name,name,int(age),job,hobbie)

print(msg)

输出

C:\python3\python.exe D:/python/untitled2/python_2/格式化输出.py

>>请输入你的名字: 超人

>>请输入你的年龄: 18

>>请输入你的职业: 世界警察

>>请输入你的爱好: 拯救世界

_______________info of 超人____________

Name    :超人

Age     : 18

Job     : 世界警察

Hobbie  : 拯救世界

_______________________end___________

例2:

name = input('>>your names: ')

age = input('>> your ages: ')

sex = input('>>your sex :')

 

print("my name is '%s,my age is %s,my sex is %s." %(name,age,sex))

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

>>your names: wang

>> your ages: 17

>>your sex :man

my name is 'wang,my age is 17,my sex is man.

9.2 format(三种方法)

三种方法:

1)按照索引顺序

s = "我叫{},今年{},爱好{}"

s1 = s.format('超人','18','维护和平')

print(s1)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

我叫超人,今年18,爱好维护和平

2)重复项一次添加,优越%s特殊之处

s = "我叫{0},今年{1},爱好{2},大家都知道{0},"

s1 = s.format('超人','18','维护和平')

print(s1)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

我叫超人,今年18,爱好维护和平,大家都知道超人,

3)键值对方法

s = "我叫{name},今年{age},爱好{hobby},大家都知道{name},"

s1 = s.format(name='超人',age='18',hobby='维护和平')

print(s1)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

我叫超人,今年18,爱好维护和平,大家都知道超人,

第10章 公共方法

解释:所有数据类型通用

10.1 len

解释:统计长度

例:

s = 'superman'

print(len(s))

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

8

10.2 count

解释:数出元素中字符串出现的次数s

s = 'superman'

print(s.count('m'))

输出:

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

1

第11章 数据类型之间的转换

11.1 list转换str

解释说明:+++join

1)用法:

字符串._join()

s = 'you are loser'

s1 = '*'.join(s)

print(s1,type(s1))

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

y*o*u* *a*r*e* *l*o*s*e*r <class 'str'>

2)list转str

解释:列表转换成字符串,可迭代对象都适用

l1 = ['zhao','qian','sun','li']

s10 = ''.join(l1)

print(s10,type(s10))

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

zhao qian sun li <class 'str'>

 

注意:!!!!列表里的元素必须都是字符串

11.2 str转换int

必要条件:字符串必须有数字组成

11.3 int转换 str(1)

s = 123

print(s,type(s))

s2 = str(s)

print(s2,type(s2))

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

123 <class 'int'>

123 <class 'str'>

11.4 str转换 int(1)

s = '123'

print(s,type(s))

s2 = int(s)

print(s2,type(s2))

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

123 <class 'str'>

123 <class 'int'>

11.5 int转换bool

0 是False,非0既是True

print(bool(100))

print(bool(-1))

print(bool(0))

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

True

True

False

11.6 bool 转换int

print(int(True))

print(int(False))

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

1

0

11.7 str转换bool

非空既是True

print(bool(''))

print(bool('wang'))

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

False

True

第12章 基础数据类型的补充

for 循环每次删除后,列表发生变化,即不能得到最后的结果,再循环列表时不要随意改变列表的大小,

l1 = [11,44,55,66,77]

# del l1[1::2]

# print(l1)

for i in range(len(l1)):

    if i % 2 == 1:

        del l1[i]

print(l1)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

[11, 55, 66]

解决方法:

倒序删除

l1 = [11,44,55,66,77]

for i in range(len(l1)-1,-1,-1):

    if i % 2 == 1:

        del l1[i]

print(l1)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

[11, 55, 77]

第13章 拾遗

13.1 分割元素的坑

1)当分割元素为首个元素时,分割空

s = 'my name is supman ,supman ,is good man'

s1 = s.replace(',',',')

print(s1)

s2 = s1.split('m')

print(s2)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

my name is supman ,supman ,is good man

['', 'y na', 'e is sup', 'an ,sup', 'an ,is good ', 'an']

2)分割次数

s = 'my name is supman ,supman ,is good man'

s1 = s.replace(',',',')

print(s1)

s2 = s1.split('m',2)

print(s2)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

my name is supman ,supman ,is good man

['', 'y na', 'e is supman ,supman ,is good man']

13.2 %占位符

l  %s 接收字符串和整型

l  %d 直接收字符串

l  转义%百分比与占位符

print('我叫%s,年龄是%s,学习进度2%%' % ('王',18)

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

我叫王,年龄是18,学习进度2%

13.3 比较预算优先级

13.3.1 优先级: () > not > and > or

print(1 > 2 and 3 < 4 or 4 > 5 and 2 > 1 or 9 < 8)

 

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

False

13.3.2 or巧记:

#x or y is Trus ,return x

print(3 or 4)

输出

C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py

3

猜你喜欢

转载自www.cnblogs.com/wang-xd/p/9049611.html
今日推荐