Python编程常用的36个经典案例

27个实用Python实例 我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。最后祝大家天天进步! 阅读详情
AI摘要

本文精选36个Python编程实例,涵盖基础语法、常见任务处理及高级特性,如列表推导、CSV文件读写、正则表达式、缓存装饰器等,适合各水平开发者学习参考。

Python 的简洁和强大使其成为许多开发者的首选语言。本文将介绍36个常用的Python经典代码案例。这些示例覆盖了基础语法、常见任务、以及一些高级功能。

1. 列表推导式

fizz_buzz_list = [       "FizzBuzz" if i % 15 == 0 else "Fizz" if i % 3 == 0 else "Buzz" if i % 5 == 0 else i for i in range(1, 101)   ]   print(fizz_buzz_list)   

这个例子展示了列表推导式,用于生成FizzBuzz序列。

2. 使用with语句和csv模块读取CSV文件

import csv      with open('data.csv', mode='r') as file:       csvFile = csv.reader(file)       for row in csvFile:           print(row)   

csv模块是处理CSV文件的利器,与with语句结合可以确保文件正确关闭。

3. 正则表达式查找字符串

import re      pattern = r'\b[A-Za-z][A-Za-z0-9_]*\b'   text = "Hello, this is a test string with username: JohnDoe"   matches = re.findall(pattern, text)   print(matches)   

正则表达式是强大的文本匹配工具,这里用来找出字符串中的所有单词。

4. 计算字符串中某个字符的数量

text = "Hello, World!"   char = "l"   count = text.count(char)   print(f"The character '{char}' appears {count} times.")   

count() 方法可以快速统计子串在字符串中的出现次数。

5. 使用set进行去重

duplicates = [1, 2, 2, 3, 4, 4, 5]   unique_list = list(set(duplicates))   print(unique_list)   

集合(set)是一个无序不重复的元素集,非常适合去重。

6. 使用format()格式化字符串

name = "John"   age = 30   print("My name is {} and I am {} years old.".format(name, age))   

format() 方法使字符串格式化更加灵活和清晰。

7. 实现一个简单的缓存装饰器

def cache(func):       cache_dict = {}       def wrapper(num):           if num in cache_dict:               return cache_dict[num]           else:               val = func(num)               cache_dict[num] = val               return val       return wrapper   @cache   def fibonacci(n):       if n < 2:           return n       return fibonacci(n-1) + fibonacci(n-2)   print(fibonacci(10))   

装饰器可以用来缓存函数的结果,提高性能。

8. 使用try-except-else-finally处理异常

try:       result = 10 / 0   except ZeroDivisionError:       print("Cannot divide by zero")   else:       print("Result is:", result)   finally:       print("Execution complete.")   

完整的异常处理流程可以让我们更好地控制程序执行。

9. 断言(assertion)的使用

def divide(a, b):       assert b != 0, "Division by zero is not allowed"       return a / b   print(divide(10, 0))   

断言可以帮助我们在开发阶段捕捉到错误条件。

10. 路径操作

import os      path = "/path/to/some/file.txt"   dirname = os.path.dirname(path)   basename = os.path.basename(path)   print("Directory:", dirname)   print("Basename:", basename)   

os.path 模块提供了许多实用的路径操作函数。

11. 环境变量的读取和设置

import os      # 读取环境变量   print("PATH:", os.environ["PATH"])   # 设置环境变量   os.environ["NEW_VAR"] = "NewValue"   print("NEW_VAR:", os.environ["NEW_VAR"])   

os.environ 允许我们访问和修改环境变量。

12. 使用itertools模块

import itertools      for combination in itertools.combinations([1, 2, 3], 2):       print(combination)   

itertools 模块提供了一系列用于创建迭代器的函数,非常有用。

13. 日期时间计算和操作

from datetime import datetime, timedelta      now = datetime.utcnow()   one_day = timedelta(days=1)   yesterday = now - one_day   print("Yesterday's date:", yesterday)   

日期时间计算是常见的需求,datetime 模块提供了丰富的类和方法。

14. 排序和反序列表

numbers = [3, 1, 4, 1, 5, 9, 2, 6]   numbers.sort()   print("Sorted:", numbers)   numbers.reverse()   print("Reversed:", numbers)   

列表对象自带的 sort() 和 reverse() 方法可以方便地对列表进行排序和反序。

15. 使用json模块处理JSON数据

import json      data = {"name": "John", "age": 30}   json_data = json.dumps(data)   print(json_data)   parsed_data = json.loads(json_data)   print(parsed_data)   

json模块使得Python处理JSON数据变得简单。

16. 使用collections模块的defaultdict

from collections import defaultdict      dd = defaultdict(int)   dd["apple"] = 1   dd["banana"] = 2   print(dd["apple"])  # 输出:1   print(dd["orange"])  # 输出: 0,不存在的键返回默认值0   

defaultdict 是字典的一个子类,它提供了一个默认值,用于字典中尝试访问不存在的键。

17. 使用functools模块的reduce函数

from functools import reduce   from operator import add   numbers = [1, 2, 3, 4]   total = reduce(add, numbers)   print(total)  # 输出:10   

reduce 函数可以将一个二元函数累积地应用到一个序列的元素上,从左到右,以便将序列减少为单个值。

18. 使用threading模块进行简单的多线程编程

import threading      def print_numbers():       for i in range(10):           print(i)   thread = threading.Thread(target=print_numbers)   thread.start()   thread.join()   

threading模块允许我们创建和管理线程,这是实现并发的一种方式。

19. 使用multiprocessing模块进行多进程编程

from multiprocessing import Process, cpu_count      def print_hello():       print("Hello from child process")   if __name__ == '__main__':       processes = []       for _ in range(cpu_count()):           p = Process(target=print_hello)           p.start()           processes.append(p)       for p in processes:           p.join()   

multiprocessing模块是Python中进行进程编程的关键模块。

20. 使用requests模块进行HTTP请求

import requests      response = requests.get("https://www.example.com")   print(response.status_code)   print(response.text)   

requests模块简化了HTTP请求的相关操作,是进行网络编程的好帮手。

21. 使用map()函数将字符串转换为整数列表

string_numbers = "1 2 3 4 5"   numbers = list(map(int, string_numbers.split()))   print(numbers)   

map() 函数可以对一个序列的每个元素应用指定的函数。

22. 条件语句

x = 7   if x > 5:       print("x is greater than 5")   else:       print("x is less than or equal to 5")   

条件语句是控制程序流程的基本构建块。

23. for循环遍历列表

fruits = ["apple", "banana", "cherry"]   for fruit in fruits:       print(fruit)   

for 循环在Python中是常用的迭代工具。

24. while循环

count = 0   while count < 5:       print(count)       count += 1   

while 循环允许程序按条件重复执行代码。

25. 使用enumerate()获取列表的索引和值

for index, value in enumerate(["apple", "banana", "cherry"]):       print(index, value)   

enumerate() 函数可以同时获得元素的索引和值,使代码更简洁。

26. 列表切片

fruits = ["apple", "banana", "cherry", "date", "elderberry"]   print(fruits[1:4])   

列表切片是访问列表子集的一种快捷方式。

27. 字符串格式化

name = "John"   age = 30   print(f"My name is {name} and I am {age} years old.")   

字符串格式化是Python中处理字符串的重要方法。

28. 异常处理

try:       result = 10 / 0   except ZeroDivisionError:       print("Cannot divide by zero")   

异常处理可以帮助我们捕获和处理错误。

29. 类定义

class Person:       def __init__(self, name, age):           self.name = name           self.age = age       def greet(self):           print(f"Hello, my name is {self.name} and I am {self.age} years old.")   

类的使用是面向对象编程的核心。

30. 集合并集

fruits_set = {"apple", "banana", "cherry"}   veggies_set = {"carrot", "broccoli", "banana"}   print(fruits_set | veggies_set)   

集合操作可以方便地处理一组唯一的元素。

31. 创建字典

person_dict = {"name": "John", "age": 30, "city": "New York"}   print(person_dict)   

字典是存储键值对的数据结构。

32. 访问字典值

person_dict = {"name": "John", "age": 30, "city": "New York"}   print(person_dict["name"])   

通过键来访问字典中的值。

33. 删除字典元素

person_dict = {"name": "John", "age": 30, "city": "New York"}   del person_dict["age"]   print(person_dict)   

在字典中删除元素同样容易。

34. 生成器函数

def countdown(n):       while n > 0:           yield n           n -= 1   for i in countdown(5):       print(i)   

生成器可以创建迭代器,按需产生值。

35. 使用zip()同时遍历多个列表

names = ["Alice", "Bob", "Charlie"]   ages = [25, 30, 35]   for name, age in zip(names, ages):       print(name, age)   

使用 zip() 可以方便地并行迭代多个序列。

python实操案例——小白篇 创建一个多功能计算器,支持加法、减法、乘法、除法操作,并包含输入验证和错误处理。:编写一个函数,在用户输入的数字列表中查找最大值和最小值,并包含数据验证。:编写一个函数,判断用户输入的数字是奇数还是偶数,并包含输入验证。:编写一个程序,统计用户输入字符串中每个字符的出现次数,忽略空格。:计算用户输入的一组数字的平均值,包含非数字输入的验证。:编写一个函数生成斐波那契数列,并包含数据验证和扩展。:创建一个文本文件,写入内容并读取,包含错误处理。 阅读详情

相关推荐

快速入门(完整):Python实例100个(基于最新Python3.7版本)

Python3 100例 原题地址: http://www.runoob.com/python/python-100-examples.html git地址: https://github.com/RichardFu123/Python100Cases 原例为Python2.7版本 重写过程中有不少是随意发挥的 重写运行版本:Python3.7 总...

Shawn的博客 40万+

十五道Python小案例,学会这些,Python基础已过关!

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33795743的博客 1282

Python爬虫十个经典入门实战案例!小白必备...

涉及主要知识点: web是如何交互的 requests库的get、post函数的应用 response对象的相关函数,属性 python文件的打开,保存 点击python资源共享圈即可下载最新Python学习资料、最新企业级项目实战和最新的面试题库 代码中给出了注释,并且可以直接运行哦 如何安装requests库(安装好python的朋友可以直接参考,没有的,建议先装一哈python环境) windows用户,Linux用户几乎一样: 打开cmd输入以下命令即可,如果python的环境在C盘的目录,会提

weixin_50181817的博客 9113

十五个Python经典案例,学会这些,Python基础已过关!

今天给大家搜集了十五道Python的经典案例,希望各位都能学会!不懂得大家可以在加群在群里发消息问问题,想要资料的也自取! 一、猜数字 1到4能组成多少个互不相同且不重复数字的三位数?分别是? 分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。 程序源代码: 二、公司发放的奖金的计算 分析:请利用数轴来分界,定位。注意定义时需把奖金定义成长整型。 程序源代码: 三、一个整数加上100后是一个完全平方数,再加168又是一个完

码农黑羽的博客 9974

turtle库的几个简单案例,代码可直接运行(python经典编程案例)

turtle官网:https://docs.python.org/3/library/turtle.html。这个库被介绍为一个最常用的用来给孩子们介绍编程知识的方法库,其主要是用于程序设计入门,是标准库之一,利用turtle可以制作很多复杂的绘图。 下面是几个简单案例: 1. 画三角形 from turtle import forward, right def triangle(sidelength): for i in range(3): forward(sidelength

数据知道的博客 3万+

基础的pdf病毒木马

基础的pdf病毒木马 环境: 攻击机:Kali 目标操作系统:Windows 10或Windows 7 (关闭防火墙和安全软件) 目标软件:Adobe Reader 8.1.2 msf框架搜索:adobe-pdf 1.打开msfconsole 2.搜索 adobe_pdf模块 3.加载攻击模块并设置payload 4.运行生成pdf 5.将pdf拖入到win10 6.打开msf,加...

小小猪的博客 4624

十个 Python 案例分享

十个 Python 案例分享,不过字数可能达不到 15000 字,你可以根据实际情况进一步拓展和完善每个案例的内容细节哦。

芊言凝语 7052

四十二、Fluent欧拉模型流化床模拟:从基础设置到颗粒动力学解析

本文详细解析了Fluent欧拉模型在流化床模拟中的应用,从基础概念到颗粒动力学设置全面覆盖。重点介绍了欧拉模型的颗粒温度概念、多相流配置技巧以及关键参数优化策略,帮助工程师准确模拟气固两相流动现象。通过实用案例演示了网格检查、求解器配置和边界条件设置的最佳实践。

weixin_27303545的博客 445

Python编程常用的36个经典案例!

Python 的简洁和强大使其成为许多开发者的首选语言。本文将介绍36个常用的Python经典代码案例。这些示例覆盖了基础语法、常见任务、以及一些高级功能。

Python_trys的博客 2816

常见卫星图源下载教程

上面列出的8个常见的亚米级别数据源都可以通过xyz协议或者wmts/wms协议进行下载。这些协议是什么?地理信息数据为了方便网络传输,制定了一系列的地理数据传输标准(wms/wmts/xyz等)。协议特点优点缺点栅格数据支持矢量数据支持WMS通过HTTP请求获取GIS数据,服务器会将数据渲染成图像高度定制的地图;交互性强服务器渲染图像,响应时间较长支持有限支持WMTS提供预渲染的地图瓦片速度快,因为地图瓦片可以预先生成并在请求时快速提供瓦片的内容是预先确定的,无法进行定制支持。

锐多宝的地理空间 1万+

XCP_Basic 移植步骤

XCP_Basic 移植步骤

ggzzc的博客 2316

Python 编程常用的 36 个经典案例

基础案例 列表推导式 fizz_buzz_list = [ "FizzBuzz" if i % 15 == 0 else "Fizz" if i % 3 == 0 else "Buzz" if i % 5 == 0 else i for i in range(1, 101) ] print(fizz_buzz_list) 说明:使用列表推导式生成 FizzBuzz 序列。

伤心的辣条 372

Python爬虫实战:从巨潮网批量抓取上市公司年报JSON数据

网络爬虫作为自动化数据采集的核心技术,其原理是通过模拟浏览器行为向服务器发送HTTP请求并解析响应,从而高效获取结构化信息。在金融数据分析领域,这项技术价值尤为突出,能够将研究人员从繁琐的手工数据收集中解放出来,聚焦于更高阶的模型构建与价值挖掘。典型的应用场景包括上市公司财务研究、市场趋势分析和风险预警系统开发。本文以Python的requests库为核心工具,详细解析如何通过分析巨潮资讯网的JSON数据接口,构建一个稳定、高效的上市公司年报数据采集管道,并重点探讨了接口逆向、分页爬取、PDF文件下载等关键

weixin_42529366的博客 1236

Python基础教程——常用的36个经典案例!

类的使用是面向对象编程的核心。

2301_78217634的博客 3697

ubuntu20.4源码安装最新gcc(gcc V12.2)

Ubuntu20.4自带的gcc为V9.4.0的版本,老版本的gcc存在不支持新版本C语言规范,在配置、编译、安装应用软件或工具时,可能存在不能正确安装的问题。(比如:libpqxx-7.7.4在配置时要求c++17版本的支持,但gcc V9.4.0版本不支持c++17)。因此本文介绍ubuntu20.4的系统下载最新gcc12.2版本源码,并进行本地编译、安装。本节内容包括gcc12.2的必备库安装和gcc12.2安装两部分内容组成。

q544344318的博客 1万+

Android 9.0 延时开机动画解决首次开机黑屏和去掉android正在启动的提示框

在9.0的系统产品rom定制化开发中,在一些产品中会出现在首次开机的时候,由于在开机动画播放完以后会出现几秒短暂的黑屏情况,然后进入默认Launcher,这在产品体验上 也是感觉到有点差,所以会要求在去掉这个首次开机黑屏的效果,和在启动过程中的 android is starting这个提示框的这些效果优化,接下来就分析下相关功能, 然后实现这个功能的开发

安卓兼职framework和app工程师的博客 3245

Python编程的众多经典案例解析

Python编程的众多经典案例解析将程序员曾曾设为星标,不错过每一篇精品文章。Python,以其简洁明了的语法和强大的功能,深受众多开发者的喜爱。

qq_16111127的博客 24

家用扫地机器人实物拆解报告-从顶盖到每一颗螺丝 · 逐层拆解旗舰扫拖一体机器人

2026年旗舰扫拖机器人拆解报告:采用D形机身设计,主机重4.5kg,基站重12kg。核心配置包括RK3588S+STM32H743双处理器、8颗21700电池、LDS激光雷达和双摄像头+结构光导航系统。创新设计亮点:锥形滚刷自动排毛发、活水循环拖地系统、基站集成450W强力集尘和自动上下水模块(带三重防漏保护)。整机采用模块化设计,关键部件均支持快速更换,在密封性、防呆设计和降本增效方面展现出成熟的工程智慧。

智能硬件研发,欢迎交流 519

Python编程常用的19个经典案例

经典案例

2301_78095812的博客 1108

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Python基础教程——常用的35个经典案例

Python 的简洁和强大使其成为许多开发者的首选语言。本文将介绍35个常用的Python经典代码案例。这些示例覆盖了基础语法、常见任务、以及一些高级功能。(建议收藏食用)

m0_75067840的博客 1175

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

99个Python经典案例,助你快速提升编程技能!

99个Python经典案例,助你快速提升编程技能,能帮你提高编程和办公的技能

python茶水实验室 1678

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

从Excel到Python:最常用的36个Pandas函数

从Excel到Python:最常用的36个Pandas函数 关于Excel,你一定用的到的36个Python函数 本文涉及pandas最常用的36个函数,通过这些函数介绍如何完成数据生成和导入、数据清洗、预处理,以及最常见的数据分类,数据筛选,分类汇总,透视等最常见的操作。 生成数据表 常见的生成数据表的方法有两种,第一种是导入外部数据,第二种是直接写入数据。 Excel中的“文件”菜单中...

轻松学python的博客 2083

python经典入门书籍推荐-Python大神推荐给小白的36本入门书籍

Python大神推荐给小白的36本入门书籍如果看我喜欢可以找我领取Python电子书和学习资料1.Python编程:从入门到实践我自己最初看的这本书,觉得非常适合入门2.python入门经典-图灵图书3.《Python学习手册(第4版)》【内容介绍】通过《Python学习手册(第4版)》,可以学习到Python的主要内建对象类型如数字、列表和字典,以及学习到使用Python语句创建和处理对象的方法...

weixin_37988176的博客 428

python编程基础与案例集锦,python编程案例教程答案

作为一个IT的过来人,我自己整理了一些python学习资料,希望对你们有帮助。有问题可以扫描下面二维码——>添加csdn官方认证二维码探讨。

降AIGC工具 997

python编程基础与案例集锦,python编程入门经典

大家好,本文将围绕python编程基础与案例集锦展开说明,python编程入门与案例详解是一个很多人都想弄明白的事情,想搞清楚python入门程序例子需要先了解以下几个事情。题目:一个5位数,判断它是不是回文数。题目:一个数如果恰好等于它的因子之和,这个数就称为“完数”。题目:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。a[i],a[l-i-1] = a[l-i-1],a[i] #注意此句。

神经网络爱好者 372
上一篇: 【Python】Python基础入门大全,你想要得这里全都有
下一篇: 2024需求最大的 8 种编程语言
编程阿布
博客等级 码龄4年 656粉丝 87原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值