干货满满,30个Python源代码!
1.十进制转换为二进制
>>> bin(10)
'0b1010'
2.十进制转换为八进制
>>> oct(9)
'0o11'
3.十进制转换为十六进制
>>> hex(15)
'0xf'
4.字符串转换为字节类型
>>> s = "apple"
>>> bytes(s,encoding='utf-8')
b'apple'
5.字符类型、数值型等转换为字符串类型
>>> i = 100
>>> str(i)
'100'
6.十进制整数对应的 ASCII 字符
>>> chr(65)
'A'
7.ASCII字符对应的十进制数
>>> ord('A')
65
8.整数或数值型字符串转换为浮点数
>>> float(3)
3.0
9.创建数据字典的几种方法
>>> dict()
{}
>>> dict(a='a',b='b')
{'a': 'a', 'b': 'b'}
>>> dict(zip(['a','b'],[1,2]))
{'a': 1, 'b': 2}
>>> dict([('a',1),('b',2)])
{'a': 1, 'b': 2}
10.排序函数
>>> a = [1,4,2,3,1]
#降序
>>> sorted(a,reverse=True)
[4, 3, 2, 1, 1]
>>> a = [{'name':'xiaoming','age':18,'gender':'male'},{'name':'xiaohong','age':20,'gender':'female'}]
#按 age升序
>>> sorted(a,key=lambda x: x['age'],reverse=False)
[{'name': 'xiaoming', 'age': 18, 'gender': 'male'},
{'name': 'xiaohong', 'age': 20, 'gender': 'female'}]
11.求和函数
>>> a = [1,4,2,3,1]
>>> sum(a)
11
#求和初始值为1
>>> sum(a,1)
12
12.计算字符串型表达式的值
>>> s = "1 + 3 +5"
>>> eval(s)
9
>>> eval('[1,3,5]*3')
[1, 3, 5, 1, 3, 5, 1, 3, 5]
13.获取用户输入内容
>>> input()
I'm typing
"I'm typing "
14.print 用法
>>> lst = [1,3,5]
# f 打印
>>> print(f'lst: {lst}')
lst: [1, 3, 5]
# format 打印
>>> print('lst:{}'.format(lst))
lst:[1, 3, 5]
15.格式化字符串常见用法
>>> print("i am {0},age {1}".format("tom",18))
i am tom,age 18
>>> print("{:.2f}".format(3.1415926)) # 保留小数点后两位
3.14
>>> print("{:+.2f}".format(-1)) # 带符号保留小数点后两位
-1.00
>>> print("{:.0f}".format(2.718)) # 不带小数位
3
>>> print("{:0>3d}".format(5)) # 整数补零,填充左边, 宽度为3
005
>>> print("{:,}".format(10241024)) # 以逗号分隔的数字格式
10,241,024
>>> print("{:.2%}".format(0.718)) # 百分比格式
71.80%
>>> print("{:.2e}".format(10241024)) # 指数记法
1.02e+07
值(值得注意,自定义的实例都可哈希,list, dict, set等可变对象都不可哈希)>>> class Student():def __init__(self,id,name):self.id = idself.name = name>>> xiaoming = Student('001','xiaoming')
>>> hash(xiaoming)
-9223371894234104688
16.if not x
直接使用 x 和 not x 判断 x 是否为 None 或空
x = [1,3,5]if x:print('x is not empty ')if not x:print('x is empty')
17.打开文件,并返回文件对象
>>> import os
>>> os.chdir('D:/source/dataset')
>>> os.listdir()
['drinksbycountry.csv', 'IMDB-Movie-Data.csv', 'movietweetings',
'titanic_eda_data.csv', 'titanic_train_data.csv']
>>> o = open('drinksbycountry.csv',mode='r',encoding='utf-8')
>>> o.read()
"country,beer_servings,spirit_servings,wine_servings,total_litres_of_pur
e_alcohol,continent\nAfghanistan,0,0,0,0.0,Asia\nAlbania,89,132,54,4.9,"
18. 创建迭代器
>>> class TestIter():def __init__(self,lst):self.lst = lst# 重写可迭代协议__iter__def __iter__(self):print('__iter__ is called')return iter(self.lst)
迭代 TestIter 类:>>> t = TestIter()
>>> t = TestIter([1,3,5,7,9])
>>> for e in t:print(e)__iter__ is called
1
3
5
7
9
19.创建range迭代器
>>> t = range(11)
>>> t = range(0,11,2)
>>> for e in t:print(e)0
2
4
6
8
10
20.反向
>>> rev = reversed([1,4,2,3,1])
>>> for i in rev:print(i)1
3
2
4
1
21.打包
>>> x = [3,2,1]
>>> y = [4,5,6]
>>> list(zip(y,x))
[(4, 3), (5, 2), (6, 1)]
>>> for i,j in zip(y,x):print(i,j)4 3
5 2
6 1
22.过滤器
函数通过 lambda 表达式设定过滤条件,保留 lambda 表达式为True的元素:>>> fil = filter(lambda x: x>10,[1,11,2,45,7,6,13])
>>> for e in fil:print(e)11
45
13
23. split 分割**
>>> 'i love python'.split(' ')
['i', 'love', 'python']
24. 提取后缀名
>>> import os
>>> os.path.splitext('D:/source/dataset/new_file.txt')
('D:/source/dataset/new_file', '.txt') #[1]:后缀名
25.斐波那契数列前n项
>>> def fibonacci(n):a, b = 1, 1for _ in range(n):yield aa, b = b, a+b # 注意这种赋值>>> for fib in fibonacci(10):print(fib)1
1
2
3
5
8
13
21
34
55
26.list 等分 n 组
>>> from math import ceil
>>> def divide_iter(lst, n):if n <= 0:yield lstreturni, div = 0, ceil(len(lst) / n)while i < n:yield lst[i * div: (i + 1) * div]i += 1>>> for group in divide_iter([1,2,3,4,5],2):print(group)[1, 2, 3]
[4, 5]
27. 列表生成式
data = [1, 2, 3, 5, 8]
result = [i * 2 for i in data if i & 1] # 奇数则乘以2
print(result) # [2, 6, 10]
28.字典生成式
keys = ['a', 'b', 'c']
values = [1, 3, 5]d = {k: v for k, v in zip(keys, values)}
print(d)
29.判断字符串是否包含某个子串,使用in明显更加可读
x = 'zen_of_python'
if 'zen' in x:print('zen is in')
30.zip 打包
使用 zip 打包后结合 for 使用输出一对
keys = ['a', 'b', 'c']
values = [1, 3, 5]for k, v in zip(keys, values):print(k, v)
干货满满,30个Python源代码!相关推荐
- e记法 python 底数_干货满满,30个Python源代码!
1.十进制转换为二进制 >>> bin(10) '0b1010' 2.十进制转换为八进制 >>> oct(9) '0o11' 3.十进制转换为十六进制 >&g ...
- 你可能不知道的Python面试秘籍 干货满满(附带参考答案)上篇
Q1.Python中的列表和元组有什么区别? 你可能不知道的Python面试秘籍 干货满满(附带参考答案)上篇 Q2.Python的主要功能是什么? Python是一种解释型语言.与C语言等语言不同, ...
- 最让人暖心的Numpy笔记~干货满满!你绝对不能错过哦~~~~
NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库. NumPy 的前身 Numeric 最早 ...
- 即学即用的30段Python实用代码
(图片付费下载自视觉中国) 原标题 | 30 Helpful Python Snippets That You Can Learn in 30 Seconds or Less 作 者 | Fatos ...
- 深度好玩!10个有趣且易上手的AI项目(附 Python 源代码)
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自|机器学习算法那些事 人工智能已经成为我们生活的一部分.我 ...
- python自动源码_谷歌推出Tangent开源库,在Python源代码上做自动微分
原标题:谷歌推出Tangent开源库,在Python源代码上做自动微分 李林 编译自 Google Research Blog 谷歌今天推出了一个新的开源Python自动微分库:Tangent. 和现 ...
- css就近原则_细品100道CSS知识点(上)「干货满满」
作者:hh_phoebe 转发链接:https://juejin.im/post/5ee0cf335188254ec9505381 目录 细品100道CSS知识点(上)[干货满满]本篇 细品100道C ...
- 资深程序员才知道的30个Python技巧
Python中的省略号 Python省略号是三点序列,通常在自然语言中使用.但是您可能不知道的是,这也是Python中的有效对象: - Ellipsis 它主要用于NumPy中的矩阵切片操作.但是,您 ...
- 干货满满~阿里天池目标检测保姆级教程
阿里天池目标检测类比赛入门 1赛前准备 1.1设备 1.2必备技术 1.3相关论文 1.4开源工具 2比赛规则分析 2.1评分指标 2.2模型限制的解决方法 3数据分析 3.1感受野&anch ...
- 王者荣耀——bat批处理文件,自动刷金币版(脱胎于30行Python代码刷金币版),Windows双击即可运行!
参考<30行Python代码刷王者荣耀金币>:https://segmentfault.com/a/1190000012520431 1.源代码 以下是源代码部分,全部复制到文本文档, 用 ...
最新文章
- 故事篇:数据库架构演变之路
- 论坛报名 | 语音与自然语言处理的最新突破和前沿趋势
- Understanding Global Unicast IPv6 Addressing
- ffmpeg流文件合并concat
- 认证服务号可通过模板消息向用户发送重要的服务通知
- Kotlin reduce、fold
- [置顶] ibatis做分页
- IBASE handle free after save - buffer table cleared
- 推荐系统中的矩阵分解演变方式
- JAXB –不需要注释
- 计算机网络课程设计之网络代理服务器的设计与实现
- SVM与feature
- 字符串、组合数据类型练习
- Codeforces Round #256 (Div. 2)——Multiplication Table
- Mybatis if test中字符串比较
- 定制.NET GridView的长文本显示表格
- Java连接MySQL数据库步骤
- 推荐一款好用的Web端JSON在线编辑器svelte-jsoneditor
- Mac如何拷贝文件到移动硬盘
- python socket和多线程实现多人对话聊天室