- Python爬虫基础知识:从零开始的抓取艺术
egzosn
python爬虫开发语言
在大数据时代,网络数据成为宝贵的资源,而Python爬虫则是获取这些数据的重要工具。本文旨在为初学者提供一份Python爬虫的入门指南,涵盖基础知识、常用库介绍、实战案例以及注意事项,帮助你快速上手,成为一名合格的“网络矿工”。一、Python爬虫概述1.1什么是爬虫?爬虫,也称为网络爬虫或蜘蛛,是一种自动抓取互联网信息的程序。它通过模拟人类浏览网页的行为,自动地遍历和抓取网络上的数据,常用于数据
- 探索PySide6:一个全面的Qt绑定库,助您构建华丽的Python应用
黎情卉Desired
探索PySide6:一个全面的Qt绑定库,助您构建华丽的Python应用去发现同类优质开源项目:https://gitcode.com/在Python世界中,开发图形用户界面(GUI)的应用程序时,PySide6是一个不可或缺的名字。它是Qt库的一个官方、稳定且全功能的Python绑定,由Digia(现为TheQtCompany)维护。本文将深入探讨PySide6的特性、用途及其背后的技术,帮助您
- Python如何获取股票实时行情?有哪些好用的库和工具
股票程序化交易接口
量化交易股票API接口Python股票量化交易大数据python股票实时行情库工具股票量化接口股票API接口
Python股票接口实现查询账户,提交订单,自动交易(1)Python股票程序交易接口查账,提交订单,自动交易(2)股票量化,Python炒股,CSDN交流社区>>>Python与股票行情获取的基础Python在金融数据处理中的优势Python是一种功能强大且灵活的编程语言。在金融领域,它的简洁语法和丰富的库使其成为处理股票行情数据的理想选择。Python能够方便地进行数据获取、清洗、分析和可视化
- 联想Y7000+RTX4060+i7+Ubuntu22.04运行DeepSeek开源多模态大模型Janus-Pro-1B+本地部署
铮铭
深度学习deepseekJanus-Pro文生图图像理解
直接上手搓了:condacreate-nmyenvpython=3.10-ygitclonehttps://github.com/deepseek-ai/Janus.gitcdJanuspipinstall-e.pipinstallwebencodingsbeautifulsoup4tinycss2pipinstall-e.[gradio]pipinstall'pexpect>4.3'python
- Python Kivy 框架使用指南
寒秋丶
Pythonpython开发语言运维开发软件测试测试开发自动化测试性能测试
大家好,在当今数字化的世界中,移动应用程序和交互式用户界面的需求日益增长。开发人员需要一种灵活、功能强大且易于使用的工具来构建跨平台的应用程序,以满足不断变化的用户需求。PythonKivy框架正是这样一种工具,它不仅提供了创建漂亮而且功能丰富的用户界面的能力,还能让开发人员在不同的平台上轻松部署他们的应用程序。本文将带领您深入了解PythonKivy框架,从安装和设置开始,一直到构建复杂交互式应
- python kivy使用教程
又可乐
python开发语言深度学习tensorflowpycharm
Kivy是一个用于创建跨平台应用程序的Python库。它使用基于OpenGL的渲染器,可以让你创建自定义用户界面和交互式应用程序。要使用Kivy,首先需要安装Python和Kivy。推荐使用Anaconda来管理Python环境和安装Kivy。安装Anaconda后,在命令行中运行以下命令来安装Kivy:condainstall-cconda-forgekivy然后,你就可以在Python代码中导
- python对文件加密解密模块
ustczhng2012
Python相关博文cryptoAES加密解密
安装Crypto:pip3installpycryptodome封装一个可用的模块#!/usr/bin/python#-*-coding:UTF-8-*-fromCrypto.CipherimportAESimporthashlibclassAescrypt():def__init__(self,key,model=AES.MODE_CBC,iv='1234567812345678'):self.
- Kivy基础教程
PoolPoolIsTryingHard
python开发语言
文章目录一、Kivy是什么?二、安装kivy1.安装kivy2.第一个kivy界面hello,kivy!二,Label三,Button四,Spinbox五,TextInput一、Kivy是什么?Tkinter是Python的图形用户界面(GUI)模块,您可以使用Python制作桌面应用程序。您可以制作窗口、按钮、显示文本和图像等。你也可以用kivy开发Android应用,或者用于iOS开发。二、安
- Python对文件加密操作
小米粥里游过泳
python开发语言
采用XOR加密方式。defencrypt_file(encrypt_path,decrypt_path,key):withopen(encrypt_path,"rb")asencrypt_file,open(decrypt_path,"wb")asdecrypt_file:#将key转化为字节码数据,并计算出所需要的字节长度key_bytes=key.to_bytes((key.bit_lengt
- python中文件加密
你猜
python文件加密
1、RSA加密算法详解参考:https://blog.csdn.net/wm_1991/article/details/519545652、http://blog.sina.com.cn/s/blog_8657e5490102xy7b.html
- 深入探讨:如何在Python中使用流式传输技术高效调用大型语言模型
m0_57781768
python语言模型microsoft
深入探讨:如何在Python中使用流式传输技术高效调用大型语言模型在现代人工智能应用中,大型语言模型(LargeLanguageModels,LLM)已经成为了强大的工具,能够生成高质量的自然语言文本,并且被广泛应用于各种任务中,如对话系统、文本生成、内容总结等。然而,如何更加高效地调用这些模型,特别是在实时交互的应用中,往往是开发者面临的挑战。流式传输(Streaming)技术提供了一种解决方案
- Python Kivy 进阶功能教程
蜡笔小新星
Kivypythonnginx开发语言学习经验分享
文章目录1.动画和效果1.1Kivy的Animation类示例:简单按钮动画1.2创造更多动画效果示例:移动和旋转动画2.音频与视频2.1使用MediaPlayer播放音频和视频文件示例:播放音频文件2.2播放视频文件示例:播放视频3.多媒体和图形处理3.1使用Canvas绘制简单图形示例:绘制形状3.2创建一个图形绘制工具应用示例:基本绘图工具总结在本教程中,我们将深入学习Kivy的一些进阶功能
- Python 如何使用访问Windows共享文件夹
蜡笔小新星
pythonwindows开发语言经验分享
文章目录引言前置条件步骤一:导入必要的模块步骤二:配置连接参数步骤三:实例化SMB连接对象并尝试连接步骤四:列出共享文件夹中的文件与文件夹步骤五:下载与上传文件(可选)步骤六:处理连接错误错误排查指南结论引言本教程旨在帮助您使用pysmb库,通过SMB(ServerMessageBlock)协议,轻松连接到Windows共享文件夹,并列举其中的文件与文件夹。此外,我们还将简要介绍如何下载和上传文件
- python 文件操作全知道 | python 小知识
aiweker
跟我学pythonpython前端
python文件操作全知道|python小知识在Python中,处理文件和目录是一项基础且重要的任务。本文将带你了解几个常用的文件和目录处理模块:pathlib、os.path、shutil和os.walk,并通过具体的应用场景和代码示例来展示它们的使用方法。1.pathlib模块pathlib是Python3.4引入的一个模块,它提供了一个面向对象的文件系统路径操作方法。Path类是pathli
- Python的加密与解密_pyarmor解码
2401_84584583
程序员python网络安全
随着信息化和数字化社会的发展,人们对信息安全和保密的重要性认识不断提高,于是在1997年,美国国家标准局公布实施了“美国数据加密标准(DES)”,民间力量开始全面介入密码学的研究和应用中,采用的加密算法有DES、RSA、SHA等。随着对加密强度需求的不断提高,近期又出现了AES、ECC等。使用密码学可以达到以下目的:保密性:防止用户的标识或数据被读取。数据完整性:防止数据被更改。身份验证:确保数据
- Python: 配置清华源
Dark_Y3
Pythonpython开发语言
pipconfigsetglobal.index-urlhttps://pypi.tuna.tsinghua.edu.cn/simple
- 特征选择(机器学习)
赵孝正
机器学习算法机器学习人工智能
目录1.为什么需要特征选择2.常见的特征选择方法2.1过滤式(FilterMethods)小示例(用Python伪代码表达):2.2包裹式(WrapperMethods)小示例(RFE伪代码示例):2.3嵌入式(EmbeddedMethods)小示例(Lasso伪代码示例):3.实践建议4.小结1.为什么需要特征选择在机器学习任务中,经常会遇到以下问题:特征(变量)数量过多,导致计算量大、训练速度
- python创建python.py时遇到的问题 name is not defined
江大倩
pythonpython
创建py文件之后,运行文件时报错:是一个nameerror,说var为定义,所以执行不成功。这是因为将var定义在了函数里面,即return后一行的代码缩进了,导致var没有定义成功,只需要去除缩进就可以了。更改如下:
- python中name is not defined怎么解决_python name 'file' is not defined的解决办法
weixin_39900582
python中nameisnotdefined怎么解决
python版本3.11源码:poem='''\ProgrammingisfunWhentheworkisdoneifyouwannamakeyourworkalsofun:usePython!'''f=file('poem.txt','w')#openfor'w'ritingf.write(poem)#writetexttofilef.close()#closethefilef=file('po
- 【Python】解决UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0x9A in position xxx: illegal multibyte
云天徽上
python运行报错解决记录pythonnumpy机器学习深度学习pandas
【Python】解决UnicodeDecodeError:‘gbk’codeccan’tdecodebyte0x9Ainpositionxxx:illegalmultibytesequence博主简介:曾任某智慧城市类企业算法总监,目前在美国市场的物流公司从事高级算法工程师一职,深耕人工智能领域,精通python数据挖掘、可视化、机器学习等,发表过AI相关的专利并多次在AI类比赛中获奖。CSDN人
- python中pywt库全称为PyWavelets
ayiyiyiyi
python
环境:pycharm2020.2在网上找到小波分析的程序,运行出现错误:未找到‘pywt’这个模块。于是利用pycharm中的settings添加模块搜索pywt出现pywt,但是安装失败。上网查,发现程序importpywt中pywt指的是Python小波分析库Pywavelets。安装成功,程序运行成功。
- python中pywt库安装
吟风忆柳
python
python中pywt库安装pipinstallPyWaveletscondainstallPyWavelets
- Python清华镜像源使用方法(python 安装包)
程序 代码狂人
linux运维服务器
pipinstallpandas-ihttps://pypi.tuna.tsinghua.edu.cn/simple/把红字用要下载的包名替换掉即可pip:这是Python的包管理工具,用于安装和管理Python包。pip允许你从Python包索引(PythonPackageIndex,简称PyPI)下载和安装库。install:这是pip的一个子命令,用于安装包。当你指定install时,pip
- python怎么处理表格的去重
Rhys..
pythonpandas开发语言
在Python处理表格时,可以使用pandas库中的drop_duplicates方法对一个表格进行去重。这个方法能够根据某些列或者所有列的重复值来删除重复的行,并保留第一次出现的行或指定保留的情况。让我们来看一下如何对一个Excel表格去重的示例。假设你有一个Excel文件data.xlsx,我们要对其中的数据进行去重。首先,请确保你已经安装了pandas库。如果尚未安装,请使用以下命令进行安装
- 『OpenCV-Python』色彩空间及色彩转换
opencv
点赞+关注+收藏=学会了在计算机图像处理中,色彩空间是理解和操作图像色彩的重要基础。每一种色彩空间都有自己的适用范围。RGB是比较常见的色彩空间,除此之外比较常见的色彩空间还有GRAY、HSV、Lab、YUV等。为什么会有这么多色彩空间呢?有兼容性的原因,也有为了方便计算的原因。比如YUV这个是电视信号系统采用的,以前的老电视是黑白电视,只需要一个颜色通道,后来出现了彩色电视,为了使视频信号能够兼
- Python如何写日志文件
测试小白2951
python开发语言
改目录加testcase加common,存放log6/写日志log.pyimportloggingimportosimporttimeclassLoggingUtil():def__init__(self,logger=None):#创建一个loggerself.logger=logging.getLogger(logger)level='INFO'iflevel=='DEBUG'orlevel=
- PYTHON UI自动化,selenium第一节,登录
测试小白2951
python开发语言
'''1/安装Selenium库:使用pip工具来安装Selenium库。在命令行中输入以下命令:pipinstallselenium/requestspip常用基础命令查看已经安装的第三方库:piplist直接安装库:pipinstall库名指定版本安装:pipinstallrobotframework==2.8.7卸载已安装的库:pipuninstallrequests更新某个库:pipins
- python怎样读取数据类型_python相关的几种数据类型的存储读取方式
瘦下来
python怎样读取数据类型
归纳一下python中不同数据保存格式的存储和读取,旨在方法整理和速度比较。从数据角度分两种,一是ndarray格式的纯数值数据的读写,二是对象(数据结构)如dict的文件存取。数值数据的读写.bin格式,np.tofile()和np.fromfile()importnumpyasnpa=np.random.randint(0,100,size=(10000,5000))print(a.dtype
- Python 3 基本数据类型详解
ivwdcwso
开发pythonwindows开发语言
Python是一种简单而强大的编程语言,具有丰富的数据类型来处理不同类型的数据。在本文中,我们将介绍Python3中的基本数据类型,包括整数、浮点数、字符串、列表、元组、集合和字典,并举例说明它们的使用方法和应用场景。1.整数(int)整数是Python中最基本的数据类型之一,用于表示没有小数部分的数字。整数可以是正数、负数或零。x=10y=-5z=0应用场景:计数器和计数器变量。代表物品的数量或
- Python的旅游网站数据爬虫分析与可视化大屏展示论文
IT实战课堂—x小凡同学
Python毕业设计项目python旅游爬虫
摘要随着互联网技术的迅猛发展,旅游行业也逐渐实现了数字化转型。旅游网站作为游客获取旅游信息的主要渠道,蕴含着丰富的旅游数据资源。本文旨在通过Python技术,实现旅游网站数据的爬虫分析,并利用可视化大屏展示分析结果,为旅游行业的数据驱动决策提供支持。关键词:Python;旅游网站;数据爬虫;可视化大屏一、引言旅游行业作为服务业的重要组成部分,其发展水平直接关系到国家经济的繁荣和人民生活的质量。随着
- Java实现的简单双向Map,支持重复Value
superlxw1234
java双向map
关键字:Java双向Map、DualHashBidiMap
有个需求,需要根据即时修改Map结构中的Value值,比如,将Map中所有value=V1的记录改成value=V2,key保持不变。
数据量比较大,遍历Map性能太差,这就需要根据Value先找到Key,然后去修改。
即:既要根据Key找Value,又要根据Value
- PL/SQL触发器基础及例子
百合不是茶
oracle数据库触发器PL/SQL编程
触发器的简介;
触发器的定义就是说某个条件成立的时候,触发器里面所定义的语句就会被自动的执行。因此触发器不需要人为的去调用,也不能调用。触发器和过程函数类似 过程函数必须要调用,
一个表中最多只能有12个触发器类型的,触发器和过程函数相似 触发器不需要调用直接执行,
触发时间:指明触发器何时执行,该值可取:
before:表示在数据库动作之前触发
- [时空与探索]穿越时空的一些问题
comsci
问题
我们还没有进行过任何数学形式上的证明,仅仅是一个猜想.....
这个猜想就是; 任何有质量的物体(哪怕只有一微克)都不可能穿越时空,该物体强行穿越时空的时候,物体的质量会与时空粒子产生反应,物体会变成暗物质,也就是说,任何物体穿越时空会变成暗物质..(暗物质就我的理
- easy ui datagrid上移下移一行
商人shang
js上移下移easyuidatagrid
/**
* 向上移动一行
*
* @param dg
* @param row
*/
function moveupRow(dg, row) {
var datagrid = $(dg);
var index = datagrid.datagrid("getRowIndex", row);
if (isFirstRow(dg, row)) {
- Java反射
oloz
反射
本人菜鸟,今天恰好有时间,写写博客,总结复习一下java反射方面的知识,欢迎大家探讨交流学习指教
首先看看java中的Class
package demo;
public class ClassTest {
/*先了解java中的Class*/
public static void main(String[] args) {
//任何一个类都
- springMVC 使用JSR-303 Validation验证
杨白白
springmvc
JSR-303是一个数据验证的规范,但是spring并没有对其进行实现,Hibernate Validator是实现了这一规范的,通过此这个实现来讲SpringMVC对JSR-303的支持。
JSR-303的校验是基于注解的,首先要把这些注解标记在需要验证的实体类的属性上或是其对应的get方法上。
登录需要验证类
public class Login {
@NotEmpty
- log4j
香水浓
log4j
log4j.rootCategory=DEBUG, STDOUT, DAILYFILE, HTML, DATABASE
#log4j.rootCategory=DEBUG, STDOUT, DAILYFILE, ROLLINGFILE, HTML
#console
log4j.appender.STDOUT=org.apache.log4j.ConsoleAppender
log4
- 使用ajax和history.pushState无刷新改变页面URL
agevs
jquery框架Ajaxhtml5chrome
表现
如果你使用chrome或者firefox等浏览器访问本博客、github.com、plus.google.com等网站时,细心的你会发现页面之间的点击是通过ajax异步请求的,同时页面的URL发生了了改变。并且能够很好的支持浏览器前进和后退。
是什么有这么强大的功能呢?
HTML5里引用了新的API,history.pushState和history.replaceState,就是通过
- centos中文乱码
AILIKES
centosOSssh
一、CentOS系统访问 g.cn ,发现中文乱码。
于是用以前的方式:yum -y install fonts-chinese
CentOS系统安装后,还是不能显示中文字体。我使用 gedit 编辑源码,其中文注释也为乱码。
后来,终于找到以下方法可以解决,需要两个中文支持的包:
fonts-chinese-3.02-12.
- 触发器
baalwolf
触发器
触发器(trigger):监视某种情况,并触发某种操作。
触发器创建语法四要素:1.监视地点(table) 2.监视事件(insert/update/delete) 3.触发时间(after/before) 4.触发事件(insert/update/delete)
语法:
create trigger triggerName
after/before 
- JS正则表达式的i m g
bijian1013
JavaScript正则表达式
g:表示全局(global)模式,即模式将被应用于所有字符串,而非在发现第一个匹配项时立即停止。 i:表示不区分大小写(case-insensitive)模式,即在确定匹配项时忽略模式与字符串的大小写。 m:表示
- HTML5模式和Hashbang模式
bijian1013
JavaScriptAngularJSHashbang模式HTML5模式
我们可以用$locationProvider来配置$location服务(可以采用注入的方式,就像AngularJS中其他所有东西一样)。这里provider的两个参数很有意思,介绍如下。
html5Mode
一个布尔值,标识$location服务是否运行在HTML5模式下。
ha
- [Maven学习笔记六]Maven生命周期
bit1129
maven
从mvn test的输出开始说起
当我们在user-core中执行mvn test时,执行的输出如下:
/software/devsoftware/jdk1.7.0_55/bin/java -Dmaven.home=/software/devsoftware/apache-maven-3.2.1 -Dclassworlds.conf=/software/devs
- 【Hadoop七】基于Yarn的Hadoop Map Reduce容错
bit1129
hadoop
运行于Yarn的Map Reduce作业,可能发生失败的点包括
Task Failure
Application Master Failure
Node Manager Failure
Resource Manager Failure
1. Task Failure
任务执行过程中产生的异常和JVM的意外终止会汇报给Application Master。僵死的任务也会被A
- 记一次数据推送的异常解决端口解决
ronin47
记一次数据推送的异常解决
需求:从db获取数据然后推送到B
程序开发完成,上jboss,刚开始报了很多错,逐一解决,可最后显示连接不到数据库。机房的同事说可以ping 通。
自已画了个图,逐一排除,把linux 防火墙 和 setenforce 设置最低。
service iptables stop
- 巧用视错觉-UI更有趣
brotherlamp
UIui视频ui教程ui自学ui资料
我们每个人在生活中都曾感受过视错觉(optical illusion)的魅力。
视错觉现象是双眼跟我们开的一个玩笑,而我们往往还心甘情愿地接受我们看到的假象。其实不止如此,视觉错现象的背后还有一个重要的科学原理——格式塔原理。
格式塔原理解释了人们如何以视觉方式感觉物体,以及图像的结构,视角,大小等要素是如何影响我们的视觉的。
在下面这篇文章中,我们首先会简单介绍一下格式塔原理中的基本概念,
- 线段树-poj1177-N个矩形求边长(离散化+扫描线)
bylijinnan
数据结构算法线段树
package com.ljn.base;
import java.util.Arrays;
import java.util.Comparator;
import java.util.Set;
import java.util.TreeSet;
/**
* POJ 1177 (线段树+离散化+扫描线),题目链接为http://poj.org/problem?id=1177
- HTTP协议详解
chicony
http协议
引言
- Scala设计模式
chenchao051
设计模式scala
Scala设计模式
我的话: 在国外网站上看到一篇文章,里面详细描述了很多设计模式,并且用Java及Scala两种语言描述,清晰的让我们看到各种常规的设计模式,在Scala中是如何在语言特性层面直接支持的。基于文章很nice,我利用今天的空闲时间将其翻译,希望大家能一起学习,讨论。翻译
- 安装mysql
daizj
mysql安装
安装mysql
(1)删除linux上已经安装的mysql相关库信息。rpm -e xxxxxxx --nodeps (强制删除)
执行命令rpm -qa |grep mysql 检查是否删除干净
(2)执行命令 rpm -i MySQL-server-5.5.31-2.el
- HTTP状态码大全
dcj3sjt126com
http状态码
完整的 HTTP 1.1规范说明书来自于RFC 2616,你可以在http://www.talentdigger.cn/home/link.php?url=d3d3LnJmYy1lZGl0b3Iub3JnLw%3D%3D在线查阅。HTTP 1.1的状态码被标记为新特性,因为许多浏览器只支持 HTTP 1.0。你应只把状态码发送给支持 HTTP 1.1的客户端,支持协议版本可以通过调用request
- asihttprequest上传图片
dcj3sjt126com
ASIHTTPRequest
NSURL *url =@"yourURL";
ASIFormDataRequest*currentRequest =[ASIFormDataRequest requestWithURL:url];
[currentRequest setPostFormat:ASIMultipartFormDataPostFormat];[currentRequest se
- C语言中,关键字static的作用
e200702084
C++cC#
在C语言中,关键字static有三个明显的作用:
1)在函数体,局部的static变量。生存期为程序的整个生命周期,(它存活多长时间);作用域却在函数体内(它在什么地方能被访问(空间))。
一个被声明为静态的变量在这一函数被调用过程中维持其值不变。因为它分配在静态存储区,函数调用结束后并不释放单元,但是在其它的作用域的无法访问。当再次调用这个函数时,这个局部的静态变量还存活,而且用在它的访
- win7/8使用curl
geeksun
win7
1. WIN7/8下要使用curl,需要下载curl-7.20.0-win64-ssl-sspi.zip和Win64OpenSSL_Light-1_0_2d.exe。 下载地址:
http://curl.haxx.se/download.html 请选择不带SSL的版本,否则还需要安装SSL的支持包 2. 可以给Windows增加c
- Creating a Shared Repository; Users Sharing The Repository
hongtoushizi
git
转载自:
http://www.gitguys.com/topics/creating-a-shared-repository-users-sharing-the-repository/ Commands discussed in this section:
git init –bare
git clone
git remote
git pull
git p
- Java实现字符串反转的8种或9种方法
Josh_Persistence
异或反转递归反转二分交换反转java字符串反转栈反转
注:对于第7种使用异或的方式来实现字符串的反转,如果不太看得明白的,可以参照另一篇博客:
http://josh-persistence.iteye.com/blog/2205768
/**
*
*/
package com.wsheng.aggregator.algorithm.string;
import java.util.Stack;
/**
- 代码实现任意容量倒水问题
home198979
PHP算法倒水
形象化设计模式实战 HELLO!架构 redis命令源码解析
倒水问题:有两个杯子,一个A升,一个B升,水有无限多,现要求利用这两杯子装C
- Druid datasource
zhb8015
druid
推荐大家使用数据库连接池 DruidDataSource. http://code.alibabatech.com/wiki/display/Druid/DruidDataSource DruidDataSource经过阿里巴巴数百个应用一年多生产环境运行验证,稳定可靠。 它最重要的特点是:监控、扩展和性能。 下载和Maven配置看这里: http
- 两种启动监听器ApplicationListener和ServletContextListener
spjich
javaspring框架
引言:有时候需要在项目初始化的时候进行一系列工作,比如初始化一个线程池,初始化配置文件,初始化缓存等等,这时候就需要用到启动监听器,下面分别介绍一下两种常用的项目启动监听器
ServletContextListener
特点: 依赖于sevlet容器,需要配置web.xml
使用方法:
public class StartListener implements
- JavaScript Rounding Methods of the Math object
何不笑
JavaScriptMath
The next group of methods has to do with rounding decimal values into integers. Three methods — Math.ceil(), Math.floor(), and Math.round() — handle rounding in differen