python 格式化、set类型和class类基础知识练习(上)

简介: python 格式化、set类型和class类基础知识练习

原创:叫我詹躲躲

来源:简书

链接:https://www.jianshu.com/p/e7280031a874


1.输出 %占位符


lastname = 'hello'
firstname = 'world'
print('我的名字是%s %s' %(lastname,firstname))

2.常用的格式化字符


%c 字符
%s 通过str来格式化
%i 有符号十进制整数
%d 有符号十进制整数
%u 无符号十进制整数
%o 八进制整数
%x 十六进制整数(小写字母)
%e 索引符号(小写e)
%E 索引符号(大写E)
%f 浮点实数
%g %f和%e的简写
%G %f和%E的简写

3 格式化的其他方式 format


name = '老夫子'
age = 28
print('姓名:{},年龄{}'.format(name,age))
姓名:老夫子,年龄28

4.匿名函数


lambda 参数1,参数2,参数3:表达式

特点:
1.使用lambda关键字创建函数
2.没有名字的函数
3.匿名函数冒号后面的表达式有且只有一个,是表达式不是语句
4.自带return

5.lambda 示例1


def computer(x,y):
    # 计算两数和
    return x+y

M = lambda x,y:x+y
print(M(1,2))

6.lambda 示例1


result = lambda a,b,c:a*b*c
print(result(12,121,1))

7 lambda 三元表达式模拟


age = 15
print('可以参军' if age>18 else '继续上学')

# 直接调用
result = (lambda x,y:x if x>y else y)(2,5)

8.递归函数


# 阶乘函数
def factorial(n):
    if n==1:
       return 1
    else:
       return n*factorial(n-1)
    pass

print(factorial(3))

9 递归案例 模拟实现 树形结构的遍历


import os #文件操作模块
def findFile(file_path):
    listRs = os.listdir(file_path) #得到该路径所有的文件夹
    for fileItem in listRs:
        full_path = os.path.join(file_path,fileItem)
        if os.path.isdir(full_path): #判断是否为文件夹
            findFile(full_path)
        else:
            print(fileItem)
            pass
        pass
    else:
        return
findFile('F:\\7.代码学习')

10.python的内置函数


abs(-27) #绝对值
round(21.1123) #浮点近似值
pow(2,3) #幂 2**3
divmod(10,3) # 商余
max(1,2,3,4) #最大值
min(1,2,3,4) #最小值
sum(1,2,3,4) #求和
eval() #动态执行表达式

11.类型转换函数


int #整型
float #浮点型
str #字符类型
ord #返回对应字符的ASCII
chr # 数字转字符 ASCII
bool # boolean
bin # 转换二进制
hex #转换为十六进制
oct # 八进制
list #元祖转列表
tuple #元祖
dict #创建字典
bytes #转为字节

12.可迭代参数 all


# all 用于判定给定的可迭代参数中的所有元素是否都为TRUE,如果是返回TRUE,否则返回FALSE,除了0,空,False 外都算TRUE

def all(iterable):
    for ele in iterable:
        if not ele:
            return False
    return True

li = [1,2,3,4,5,6,False]
print(all(li)) #False

12 可迭代参数 any


# 全部为false,返回false
def any(iterable):
    for ele in iterable:
        if ele:
            return False
    return True

li = [0,False,'']
print(any(li)) #False

13.enumerate 列出遍历数据和下标


li = ['a','b','c']
for index,item in enumerate(li,7):
    print(index,item)

# 改下标
7 a
8 b
9 c

14.set集合 不支持索引和切片,无序不重复


1.创建集合1

set1 = {'1','2'}
set2 = {'11','1'}
# 添加 add
set1.add('3')

# 清空 clear()
set1.clear()

# 取差集 difference
set1.difference(set2) #set1取set1中有的

# 取交集
set1.intersection(set2)

# 取并集
set1.union(set2)
set1 | set2

# 末尾移除
set1.pop()

# 指定移除
set1.discard(3)

# 更新 update 合并一起去重
set1.update(set2)

15 练习题1 三组数据求和


# 1-10,20-30,35-40
def threeSum(a1,a2,a3):
    return sum(a1+a2+a3)

a1 = list(range(1,11))
a2 = list(range(20,31))
a3 = list(range(35,41))
print(threeSum(a1,a2,a3))

16 练习题2 大小和尚多少个


def computers():
    for i in range(1,101):
        for j in range(1,34):
            if i+j==100 and 3*j+i/3 ==100:
                print('大和尚有{}个,小和尚有{}个'.format(j,i))
                pass
computers()

# 大和尚有25个,小和尚有75个

17 练习题3 找出独一无二的数据


li = [1,1,1,2,2,2,2,3,2,2,3,4,2,1,1]
def findUnionNumber(li):
    for item in li:
        if li.count(item)==1:
            return item
            pass
print(findUnionNumber(li))

1.字典统计每个元素的次数

dict ={}
for key in li:
    dict[key] = dict.get(key,0)+1
print(dict)

2.collection包下Counter类统计

from collections import Counter
a = [1, 2, 3, 1, 1, 2]
result = Counter(a)
print(result)

3.pandas包下的value_counts方法统计

import pandas as pd
a = pd.DataFrame([[1,2,3],
                  [3,1,3],
                  [1,2,1]])
result = a.apply(pd.value_counts)
print(result)

python 格式化、set类型和class类基础知识练习(下):https://developer.aliyun.com/article/1483373

相关文章
|
6天前
|
存储 索引 Python
Python从入门到精通——1.3.1练习编写简单程序
Python从入门到精通——1.3.1练习编写简单程序
|
6天前
|
数据安全/隐私保护 Python
Python从入门到精通——2.2.1深入学习面向对象编程:类和对象的定义
Python从入门到精通——2.2.1深入学习面向对象编程:类和对象的定义
|
7天前
|
Python
Python 字符串格式化指南
本文介绍了Python中的三种字符串格式化方法:1) 使用 `%` 操作符,如 `%s` 和 `%d`;2) `str.format()` 方法,通过 `{}` 占位符插入变量;3) Python 3.6 引入的 f-strings,直接在字符串内嵌入变量。此外,还提到了高级用法,如格式控制(如指定小数位数)。这些方法有助于更有效地处理和格式化字符串输出。
8 0
|
7天前
|
Python
Python 一步一步教你用pyglet制作可播放音乐的扬声器类
Python 一步一步教你用pyglet制作可播放音乐的扬声器类
16 0
|
12天前
|
存储 文件存储 Python
python基础知识(一)
python基础(一){编码,字符串格式化,数据类型,运算符,推导式(简化生成数据),函数编程,模块}
|
14天前
|
Python
python面型对象编程进阶(继承、多态、私有化、异常捕获、类属性和类方法)(上)
python面型对象编程进阶(继承、多态、私有化、异常捕获、类属性和类方法)(上)
54 0
|
5月前
|
存储 数据处理 Python
python的set集合:如何利用Python的Set集合来优化数据处理
python的set集合:如何利用Python的Set集合来优化数据处理
27 0
|
14天前
|
程序员 索引 Python
06-python数据容器-set(集合)入门基础操作
06-python数据容器-set(集合)入门基础操作
|
7月前
|
存储 索引 Python
python-tuple(元组)-set(集合)-list(列表)-dictionary(字典)和Python数据类型转换函数
python-tuple(元组)-set(集合)-list(列表)-dictionary(字典)和Python数据类型转换函数
|
10月前
|
Python 容器
python中dict的详细用法以及set集合使用
python中dict的详细用法以及set集合使用
142 0