【满满干货内容】Python I 超实用的50段简短代码实例~新手福利!

【满满干货内容】Python I 超实用的50段简短代码实例~新手福利!,第1张

【满满干货内容】Python I 超实用的50段简短代码实例~新手福利! 前言

各位小可爱,下午好~

欢迎大家阅读本期文章,我是栗子同学。

2021年,Python还需要学吗?答案是:当然。

 

栗子有话说:

近些年,Python 的火热有目共睹,作为一种功能强大的高级编程语言,在2018 年的时候它的

流行程度就得到了大幅提高。Python以其语法简洁著称。在学习Python的过程中,总是会发现

Python能够轻而易举地帮助我们解决许多问题。有时候看似复杂的任务,甚至是可以使用一行

Python代码就可以搞定。

下面栗子给大家介绍50个有趣且实用的Python简短代码,让我们一起来感受Python的强大~

正文 1)打印hello world

每个人都是从print函数开始的。

print("hello world")

结果:

 2)二进制转十进制
int("01110", 2)  # 2^3+2^2+2 = 8 + 4 + 2
3)八进制转十进制
int("140",8)  #96
4)十六进制转十进制
int("ac1",16)#2753
5)生成连续数值列表
list(range(9))# [0, 1, 2, 3, 4, 5, 6, 7, 8]
6)高斯求和

一行代码求解高斯之和:求解1到100的所有数的和

sum(range(1,101))  # range函数不包含101:5050
7)求解奇、偶数之和
# 除以2余数为0表示偶数

sum(i for i in range(1,101) if i % 2 == 0)  # 2550
# 除以2余数为0表示奇数

sum(i for i in range(1,101) if i % 2 != 0)  # 2500
8)阶乘
import math  # 需要借助第三方的库

math.factorial(6) # 6*5*4*3*2*1 #720
9)矩阵转置

矩阵转置就是实现矩阵的行列转换。

list1 = [[1,4,7], [2,5,8], [3,6,9]]  # 定义一个嵌套列表

list(list(x) for x in zip(*list1))  # list函数实现

结果:[[1, 2, 3], [4, 5, 6], [7, 8, 9]]

[list(x) for x in zip(*list1)]   # [] 符号实现

结果:[[1, 2, 3], [4, 5, 6], [7, 8, 9]]

for x in zip(*list1):
    print(list(x))
结果:
[1, 2, 3]
[4, 5, 6]
[7, 8, 9]
10)嵌套列表合并

将多个列表合并成一个大列表

list4 = [[1,2,3],[4,5,6],[7,8,9]]  # 定义一个列表

list(item for list5 in list4 for item in list5) # 从大到小

结果:[1, 2, 3, 4, 5, 6, 7, 8, 9]
11)列表合并
栗子1:
a = [1,2,3]
b = [4,5,6]

a.extend(b)
栗子:
a

结果:
[1, 2, 3, 4, 5, 6]
12)列表反转
list6 = [1,2,3,4,5,6,7]

list6[::-1]

结果:
[7, 6, 5, 4, 3, 2, 1]
13)列表解包
h,*i,j = [1,2,3,4,5]

print(h)
print(i)
print(j)

结果:
1
[2, 3, 4]
5
14)列表去重

通过将列表转成集合,利用集合的去重性质后再转成列表

list7 = [1,2,3,4,3,2,3,3]

list(set(list7))

结果:
[1, 2, 3, 4]
15)列表过滤

filter函数的两个参数:

  • 指定某个函数

  • 待执行的可迭代对象,每个对象执行前面的函数

list(filter(lambda x:x % 3 == 0, [1,3,6,7,9,10]))  # 找出3的倍数

结果:

[3, 6, 9]
16)列表推导式
[number for number in range(0,11)]  # []

结果:

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
17)集合推导式
{number for number in range(0,11)}  # {}

结果:

{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
18)合并集合
栗子1:
s1 = {1,2,3}
s2 = {4,5,6}

s1.update(s2)

栗子2
s1

结果:

{1, 2, 3, 4, 5, 6}
19)字典推导式
{i:i**3 for i in range(0,5)}  # i**3表示i的三次方

结果:

{0: 0, 1: 1, 2: 8, 3: 27, 4: 64}
20)合并字典
栗子1:
d1 = {"name1":"xiaoming","age1": 19}
d2 = {"name2":"xiaoming","age2": 28}
d1.update(d2)

栗子2:
d1

结果:

{'name1': 'xiaoming', 'age1': 19, 'name2': 'xiaoming', 'age2': 28}
21)if-for
# 寻找3的倍数

[number for number in range(0,20) if number % 3 == 0] 

结果:

[0, 3, 6, 9, 12, 15, 18]
22)if-else
print("偶数") if 8 % 2 == 0 else ("奇数")

偶数

print("偶数") if 9 % 2 == 0 else print("奇数")

奇数
23)快速排序
list2 = [9,5,1,6,2,8]  # 定义一个列表

sorted(list2) # 默认升序

结果:

[1, 2, 5, 6, 8, 9]

sorted(list2, reverse=True) # 降序

结果:

[9, 8, 6, 5, 2, 1]

list3 = ["ac","ab","bb","aa","bc","cd","ca"]

sorted(list3)

结果:

['aa', 'ab', 'ac', 'bb', 'bc', 'ca', 'cd']

首先我们按照第一个字母的ASCII来排序,默认是升序;a最小。当第一个字母相同,再按照第二个字母排序

24)字符串转成字节
"string to bytes".encode()

结果:

b'string to bytes'
25)获取26个字母表
import string

string.ascii_letters  #  大小写

结果:

'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
26)获取大写字母表
string.ascii_uppercase

结果:

'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
27)获取小写字母表
string.ascii_lowercase

结果:

'abcdefghijklmnopqrstuvwxyz'
28)字符串大小写转化
"Hello! My name is Peter".lower()   # 转成小写

结果:
'hello! my name is peter'

# 转成小写的另一种写法

"Hello! My name is Peter".casefold()  

结果:
'hello! my name is peter'

"Hello! My name is Peter".upper()  # 转成全部大写

结果:
'HELLO! MY NAME IS PETER'

"Hello! My name is Peter".title()  # 转成首字母大写

结果:
'Hello! My Name Is Peter'
29)寻找最长字符串
list7 = ["c","html","javascript","java"]

max(list7, key=len)  # key参数指定函数

结果:
'javascript'

max(list7)  # 默认

结果:
'javascript'
30)删除字符串中的数字
"".join(list(filter(lambda x: x.isalpha(), "abcde12hk18")))

结果:
'abcdehk'

list(filter(lambda x: x.isalpha(), "abcde12hk18"))

结果:
['a', 'b', 'c', 'd', 'e', 'h', 'k']
31)列表中的字符串变成数值
list(map(int, ["10","90","50"]))

结果:
[10, 90, 50]
32)字符串反转
"python"[::-1]

结果:
'nohtyp'
33)交换变量
a, b = 5, 8  # 定义两个变量

print("交换前a:",a)
print("交换前b:",b)

结果:
交换前a: 5
交换前b: 8


a, b = b, a  # 一行代码交换

print("交换后a:",a)
print("交换后b:",b)

结果:
交换后a: 8
交换后b: 5
34)数据类型检查
isinstance(5,int)  # 数值

结果:
True

isinstance("python",int)

结果:
False

isinstance("python",str)  # 字符串

结果:
True

isinstance([1,3,6],list)  # 列表

结果:
True
35)斐波那契数列
fibo = lambda x: x if x <= 1 else fibo(x-1) + fibo(x-2) 

fibo(10)

结果:
55
36)统计词频

统计字符串中单个字符的次数

"javascript".count("a")

结果:
2

"javascript".count("s")

结果:
1

"hello".count("l")

结果:
2
37)统计列表元素个数
import pandas as pd

list10 = [1,3,4,6,1,2,3,1,1,2,5,6,2]

pd.value_counts(list10)

结果:
1    4
2    3
3    2
6    2
4    1
5    1
dtype: int64
38)统计字符串元素个数
from collections import Counter

Counter("abcdeabcdabcaba")

结果:
Counter({'a': 5, 'b': 4, 'c': 3, 'd': 2, 'e': 1})
39)统计最多元素
list10 = [1,3,4,6,1,2,3,1,1,2,4,6,2]

max(list10, key=list10.count)  # 元素1最多

结果:
1

min(list10, key=list10.count)  # 元素3最少,只出现一次

结果:
3
40)当前时间
import time

time.time()   # 时间戳形式

结果:
1632501677.992713

time.ctime()  # 标准形式

结果:
'Sat Sep 25 00:09:18 2021'
41)将字符串转换为小写
print("Hi my name is XiaoF".lower())

# 'hi my name is xiaof'

print("Hi my name is XiaoF".casefold())

# 'hi my name is xiaof'
42)将字符串转换为字节
print("hi my name is XiaoF".upper())
# 'HI MY NAME IS XIAOF'
43)拷贝文件
import shutil

shutil.copyfile('source.txt', 'dest.txt')
44)运行一个HTTP服务器
python3 -m http.server 8000
python2 -m SimpleHTTPServer
45)无限循环
while 1:0
46)时间戳
import time

print(time.time())
47)日期时间
import time

print(time.ctime())
# Thu Aug 13 20:00:00 2021
48)将字符串中的数字移除
message = ''.join(list(filter(lambda x: x.isalpha(), 'abc123def4fg56vcg2')))

print(message)
# abcdeffgvcg
49)列表过滤
result = list(filter(lambda x: x % 2 == 0, [1, 2, 3, 4, 5, 6]))

print(result)
# [2, 4, 6]
50)解包
a, *b, c = [1, 2, 3, 4, 5]

print(a) # 1
print(b) # [2, 3, 4]
print(c) # 5
结尾

好啦!文章写到这里结束啦,快来学习新知识啦~

源码基地:点下面这行蓝色字体即可。

源码基地:点击即可加入哦!文章的一些免费代码、解答等都可以在这里进行!

文章汇总

1.0 20201——已收录文章汇总 ——持续更新!直接看这篇文章啦~

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4695355.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-07
下一篇 2022-11-07

发表评论

登录后才能评论

评论列表(0条)

保存