A method for driving a touch display panel which comprises L gate lines arranged sequentially and M touch scan lines arranged sequentially, where both L and M are positive integers larger than 1, the method comprising: dividing a duration for which the touch display panel displays each image frame into N control time intervals with each of the N control time intervals comprising a display refresh time period and a touch time period arranged sequentially, where N is an integer larger than 1; during the duration for which the touch display panel displays each image frame, driving the L gate lines sequentially in N display refresh time periods, and driving the M touch scan lines sequentially for K times in N touch time periods, where K is larger than 1; wherein N is an integer larger than M, and the L gate lines are divided into N gate line groups according to arrangement orders of the L gate lines; during the duration for which the touch display panel displays each image frame, one of the gate line groups is driven in each display refresh time, and one of the touch scan lines is driven in each touch time; characterized in that the method further comprises: during two adjacent frames including a previous frame and a next frame, when the display refresh time of the previous frame is completed, scanning a P-th touch scan line, where P is a positive integer smaller than or equal to M; when P is smaller than M, starting a driving operation from a (P+1)-th touch scan line when a display refresh time period of the next frame is started; and when P is equal to M, starting a driving operation from a first touch scan line when a display refresh time period of the next frame is started; wherein a quantity of the touch scan lines driven in the duration for which the touch display panel displays each image frame is not a multiple of M. dividing a duration for which the touch display panel displays each image frame into N control time intervals with each of the N control time intervals comprising a display refresh time period and a touch time period arranged sequentially, where N is an integer larger than 1; during the duration for which the touch display panel displays each image frame, driving the L gate lines sequentially in N display refresh time periods, and driving the M touch scan lines sequentially for K times in N touch time periods, where K is larger than 1; wherein N is an integer larger than M, and the L gate lines are divided into N gate line groups according to arrangement orders of the L gate lines; during the duration for which the touch display panel displays each image frame, one of the gate line groups is driven in each display refresh time, and one of the touch scan lines is driven in each touch time; characterized in that the method further comprises: during two adjacent frames including a previous frame and a next frame, when the display refresh time of the previous frame is completed, scanning a P-th touch scan line, where P is a positive integer smaller than or equal to M; when P is smaller than M, starting a driving operation from a (P+1)-th touch scan line when a display refresh time period of the next frame is started; and when P is equal to M, starting a driving operation from a first touch scan line when a display refresh time period of the next frame is started; during two adjacent frames including a previous frame and a next frame, when the display refresh time of the previous frame is completed, scanning a P-th touch scan line, where P is a positive integer smaller than or equal to M; when P is smaller than M, starting a driving operation from a (P+1)-th touch scan line when a display refresh time period of the next frame is started; and when P is equal to M, starting a driving operation from a first touch scan line when a display refresh time period of the next frame is started; wherein a quantity of the touch scan lines driven in the duration for which the touch display panel displays each image frame is not a multiple of M.