A lot of people believe they have to be clean before dedicating their lives to Christ. All the junk in their lives has to be thrown out and they need time to get themselves together.
Whatever they struggle with or demons they are fighting have to be completely gone. The drinking habit has to be gone. The struggle with lust has to be gone. This thinking is far from the truth. If we wait to get ourselves together we will always be waiting, because we simply cannot do it on our own.
When you give your life to Christ it is a process. You will not change overnight. The more you seek God, his word, develop a prayer life and surround yourself with fellow believers, the more you will see growth. Jesus accepts us as we are. It is through him that we are changed as individuals. We are spiritual beings in this human flesh. Our spirit and flesh battle on a daily basis.
As long as we are in the flesh we will always sin. No one is exempt from that no matter how holy they may present themselves. Romans 3:23-24 KJV “For all have sinned, and come short of the glory of God. Being justified freely by his grace through the redemption that is in Christ Jesus.” He is not calling you to be perfect. Don’t even aim for perfection because you will miss it every single time. Instead aim to make a conscious decision in your heart to trust that Christ can make you new. Understanding that as a human you will sin, but that you no longer have to live in sin.
Luke 31-32 And Jesus answering said unto them, They that are whole need not a physician; but they that are sick. I came not to call the righteous, but sinners to repentance.”