An obstacle avoidance walking method of a self-moving robot, in a walking area of the self-moving robot, a rectangular plane coordinate system is established with the horizontal direction as the X axis and the vertical direction as the Y axis, characterized in that, the method specifically comprises the following steps: step 100: the self-moving robot walks along the Y axis, when the self-moving robot walks forwardly along the Y axis and detects obstacle, it sets an obstacle point at the current position as an upside obstacle point and stores valid upside obstacle points as upside recorded points; when the self-moving robot walks reversely along the Y axis and detects obstacle, it sets an obstacle point at the current position as a downside obstacle point and stores valid downside obstacle points as downside recorded points; step 200: according to storage sequence, the upside recorded points are classified into a current upside recorded point and previous upside recorded points, and the downside recorded points are classified into a current downside recorded point and previous downside recorded points; step 300: if the current obstacle point is the upside obstacle point, it is determined whether there is before the current upside obstacle point a previous upside recorded point, the Y-axis coordinate of which is less than that of the current upside obstacle point; and if the current obstacle point is the downside obstacle point, it is determined whether there is before the current downside obstacle point a previous downside recorded point, the Y-axis coordinate of which is larger than that of the current downside obstacle point; step 400: if the determination result is positive, the previous upside recorded point or the previous downside recorded point is a turning point, the self-moving robot walks along the X axis from the current obstacle point toward the turning point to the X-axis coordinate of the turning point, deletes the coordinate of the turning point, and returns to the step 100 after completing traversal walking in an area between the turning point and the current obstacle point; and if the determination result is negative, the self-moving robot moves for a displacement along the X axis; step 500: the self-moving robot walks along a direction opposite to the former Y-axis walking direction, and returns to the step 100; step 600: the step 100 to the step 500 are repeated until traversal walking in the walking area is completed. step 100: the self-moving robot walks along the Y axis, when the self-moving robot walks forwardly along the Y axis and detects obstacle, it sets an obstacle point at the current position as an upside obstacle point and stores valid upside obstacle points as upside recorded points; when the self-moving robot walks reversely along the Y axis and detects obstacle, it sets an obstacle point at the current position as a downside obstacle point and stores valid downside obstacle points as downside recorded points; step 200: according to storage sequence, the upside recorded points are classified into a current upside recorded point and previous upside recorded points, and the downside recorded points are classified into a current downside recorded point and previous downside recorded points; step 300: if the current obstacle point is the upside obstacle point, it is determined whether there is before the current upside obstacle point a previous upside recorded point, the Y-axis coordinate of which is less than that of the current upside obstacle point; and if the current obstacle point is the downside obstacle point, it is determined whether there is before the current downside obstacle point a previous downside recorded point, the Y-axis coordinate of which is larger than that of the current downside obstacle point; step 400: if the determination result is positive, the previous upside recorded point or the previous downside recorded point is a turning point, the self-moving robot walks along the X axis from the current obstacle point toward the turning point to the X-axis coordinate of the turning point, deletes the coordinate of the turning point, and returns to the step 100 after completing traversal walking in an area between the turning point and the current obstacle point; and if the determination result is negative, the self-moving robot moves for a displacement along the X axis; step 500: the self-moving robot walks along a direction opposite to the former Y-axis walking direction, and returns to the step 100; step 600: the step 100 to the step 500 are repeated until traversal walking in the walking area is completed.