How long will the previous core version supported? I want to start a new project at the beginning of 2018 but I don't know if it is better to start this project with Drupal 7 or Drupal 8. Actually, I am not familiar with Drupal 8 coding and template engine.

Even though there are lots of modules that aren't available in Drupal 8 right now, such as admin menu, Date Converting module and others, I finally decided to start my project with Drupal 7, but the point that disturbs me is not knowing how long Drupal 7 will be supported. Is it 2020, 2021, or later?
Drupal 7 is currently on LTS.
  Drupal 7 LTS will end when Drupal 8 enters LTS, at which point Drupal 7 enters security fixes only mode.
  Drupal 7 security fixes only mode ends when Drupal 8 enters security fixes only mode, and Drupal 9 enters LTS.
  Essentially: Drupal 7 won't be EOL before development has started on Drupal 10.
  


Source: Has the EOL (end of life) for Drupal 7 been announced?

The simple answer is: We don't know, yet, exactly.

Check out the following articles:


When is Drupal 7 End-of-Life?
Understanding the Drupal 8 and 9 Release Cycle.



  Drupal 7 will likely get bug-fixes until October 2017, and official
  security support until 2019 or 2020 at least.