Как на языке программирования написать я тебя люблю

Однажды на Zoom-созвоне нашей команды нить дискуссии ушла за пределы планируемого. На удаленке такое часто случается, потому что всем не хватает обычного «кухонного» общения в офисе. Разговор начался с итальянской книги, где на всех языках мира написано «Я тебя люблю». Потом были возражения, что языки программирования тоже языки, почему их там нет??? Затем мы вспомнили, что не за горами День всех влюбленных. Так мы придумали, как сделать ремейк этой книги на свой лад, а заодно вспомнить про свежий рейтинг языков программирования от IEEE.

Книгу мы выпустили небольшим тиражом, а в этом посте публикуем ее содержание: признания в любви на 53 самых популярных языках программирования. А в качестве бонуса предлагаем краткое описание каждого из них.

Содержание

  1. Python
  2. Java
  3. C
  4. C++
  5. JavaScript
  6. R
  7. Arduino
  8. Go
  9. Swift
  10. MATLAB
  11. Ruby
  12. Dart
  13. SQL
  14. PHP
  15. Assembly
  16. Scala
  17. HTML
  18. Kotlin
  19. Julia
  20. Rust
  21. Shell
  22. Processing
  23. C#
  24. SAS
  25. Fortran
  26. CUDA
  27. Visual Basic
  28. Objective-C
  29. Delphi
  30. Perl
  31. Verilog
  32. VHDL
  33. Elixir
  34. F#
  35. Prolog
  36. Lua
  37. Lisp
  38. Ada
  39. Apache Groovy
  40. Scheme
  41. Haskell
  42. COBOL
  43. Clojure
  44. ABAP
  45. D
  46. Forth
  47. OCaml
  48. Tcl
  49. Erlang
  50. Eiffel
  51. CoffeeScript
  52. J
  53. Racket

1. Python. Объектно-ориентированный и интерпретируемый язык, который в значительной степени опирается на большое количество библиотек, включая популярные модули для машинного обучения и научных вычислений.

print('I love you!')

2. Java. Объектно-ориентированный язык, создающий код, предназначенный для запуска в виртуальной машине. Это позволяет запускать его на разных платформах с незначительными изменениями. Java — популярный выбор разработчиков веб-приложений.

public class ILoveYou
{
    public static void main(String[] args)
    {
        System.out.println("I love you!");
    }
}

3. C. Используется для написания программ, в которых важны скорость и гибкость. Например, во встраиваемых системах или высокопроизводительных вычислениях.

#include <stdio.h>
 
int main(void)
{
    printf("I love you!n");
    return 0;
}

4. C++. Объектно-ориентированная версия C, которая оказалась логичным продолжением для программного обеспечения, управляемого графическими пользовательскими интерфейсами.

#include <iostream>
 
int main()
{
    std::cout << "I love you!" << std::endl;
    return 0;
}

5. JavaScript. Язык сценариев, используемый в основном для добавления функциональности веб-браузерам на лету, позволяет создавать сложные веб-страницы.

document.write("I love you!");

6. R. Язык и среда программирования, предназначенные для приложений статистического анализа и интеллектуального анализа данных.

print("I love you!")

7. Arduino. Основанный на языке Wiring и среде разработки на языке Processing, родной язык микроконтроллера Arduino стал основой для огромного количества самодельных и прототипных устройств.

void setup() {
Serial.begin(9600);
Serial.println("I love you!");
}
 
void loop() {
}

8. Go. Созданный Google, Go имеет встроенную поддержку программ, которым необходимо обмениваться информацией при одновременной работе на разных ядрах или компьютерах.

package main;
 
import "fmt"
 
func main()
{
    fmt.Println("I love you!")
}

9. Swift. Язык Apple для создания программного обеспечения iOS и macOS. Совместим с кодом C, C++ и Objective-C.

print('I love you!')

10. MATLAB. Язык сценариев для вычислительной среды MATLAB от MathWorks. Предназначен для задач численных вычислений, таких как инженерное или научное моделирование.

disp('I love you!')

11. Ruby. Язык сценариев, разработанный для обеспечения большей поддержки объектов, чем в других подобных языках.

puts "I love you!"

12. Dart. Разработанный Google, Dart может быть скомпилирован для архитектур ARM и x86 для мобильных устройств или перенесен на JavaScript для браузерных приложений. Фреймворк Flutter, созданный на основе Dart, предназначен для создания собственных книг для iOS и Android.

void main() {
  print('I love you!');
}

13. SQL. Специализированный язык, предназначенный для запросов к базам данных и управления ими. Существуют расширения для написания общих программ, позволяющих, например, запускать бизнес-логику вместе с базой данных.

CREATE TABLE iloveyou (phrase TEXT);
INSERT INTO iloveyou VALUES ("I love you!");
SELECT COUNT(*) FROM iloveyou;

14. PHP. Язык сценариев, разработанный в первую очередь для поддержки динамических веб-сайтов.

<?php
echo "I love you!";
?>

15. Assembly. Общий термин для обозначения обширного семейства наборов инструкций процессора. Написание кода на ассемблере требует значительных знаний, но позволяет создавать высокоскоростное программное обеспечение, которое может работать непосредственно на железе.

    global  _main
    extern  _printf
 
    section .text
_main:
    push    message
    call    _printf
    add     esp, 4
    ret
message:
    db  'I love you!', 10, 0

16. Scala. Программы, написанные на Scala, могут работать на той же виртуальной машине, что и программы Java.

object Love {
    def main(args: Array[String]) = {
        println("I love you!")
    }
}

17. HTML. Специализированный язык для описания внешнего вида и содержания веб-страниц, часто расширяемый с помощью CSS.

<!DOCTYPE html>
<html>
    <head>
        <title>Love</title>
    </head>
    <body>
        <p>I love you!</p>
    </body>
</html>

18. Kotlin. Как расширение Java код Kotlin может работать на виртуальной машине Java или быть скомпилирован в JavaScript либо собственное Android-приложение.

fun main(args: Array<String>) {
    println("I love you!")
}

19. Julia. Язык разработан для статистических и научных вычислений, совместим с устаревшими библиотеками, написанными на Fortran и C.

println("I love you!")

20. Rust. Язык, разработанный для упрощения надежного программирования параллельных систем.

fn main() {
    println!("I love you!");
}

21. Shell. Общий термин для обозначения ряда фреймворков, которые позволяют создавать сценарии для командной строки операционной системы.

#!/bin/sh
 
echo I love you!

22. Processing. Этот язык был создан в Массачусетском технологическом институте, чтобы облегчить художникам, дизайнерам и любителям создание визуализаций. Тесно связанная с ним JavaScript-библиотека под названием p5.js позволяет создавать браузерные приложения.

PFont font;
 
void setup() {
  size(200,200);
  font = loadFont("CharterBT-Roman-48.vlw");
}
 
void draw() {
  background(255);
  textFont(font,20);
  fill(0);
  text("I love you!",10,100);
}

23. C#. Объектно-ориентированный язык, созданный Microsoft для разработки программного обеспечения для платформы .NET. Поддерживает множество приложений для Windows и Azure.

using System;
 
class ILoveYou
{
    static void Main()
    {
      Console.Write("I love you!");
    }
}

24. SAS. Язык анализа данных и статистического анализа.

data foo ;
    bar="I love" ;
    put bar= "you!";
run ;

25. Fortran. Созданный в 1950-х годах, Fortran предназначен для высокопроизводительных научных и инженерных вычислений.

      program iloveyou
          print *, "I love you!"
       end program

26. CUDA. Платформа и набор инструментов от производителя графических чипов NVIDIA, которые позволяют программистам использовать возможности графических процессоров для вычислений общего назначения.

__global__ void cuda_love(){
    printf("I love you!n");
}
 
int main() {
    cuda_love<<<1,1>>>(); 
    return 0;
}

27. Visual Basic. Microsoft создала Visual Basic для быстрой разработки Windows-приложений, но больше не поддерживает его. Потомок Visual Basic .NET, который все еще поддерживается, работает с более современной платформой .NET.

Imports System
 
Module Love
    Sub Main()
        Console.WriteLine("I love you!")
        Console.ReadLine()
    End Sub 
End Module

28. Objective-C. Был любимым языком Apple для написания приложений для OS X и iOS до появления Swift.

#import <Foundation/Foundation.h>
 
int main(int argc, const char * argv[]) {
    @autoreleasepool {
        NSLog(@"I love you!");
    }
    return 0;
}

29. Delphi. Производная Pascal, используемая для приложений Windows. Принадлежит компании Embarcadero Delphi. Реализации с открытым исходным кодом под Open Pascal существуют для других платформ.

program ILoveYou;
 
{$APPTYPE CONSOLE}
 
begin
  WriteLn('I love you!');
end.

30. Perl. Когда-то единый язык часто использовался в качестве связующего звена в сложных системах. Теперь же Perl относится к двум тесно связанным, но разным языкам: Perl 5 и обновленному Perl 6.

print('I love you!')

31. Verilog. Язык описания оборудования (определенный стандартом IEEE 1364), который используется при создании и анализе электронных схем. Составляет основу более позднего и расширенного SystemVerilog (IEEE 1800).

module love_you ;
 
initial begin
  $display ("I love you!");
   #10  $finish;
end
 
endmodule

32. VHDL. Язык описания оборудования, используемый при создании и анализе электронных схем.

entity T01_ILoveYou is
end entity;
 
architecture sim of ILoveYou is
begin
 
    process is
    begin
 
        report "I love you!";
        wait;
 
    end process;
 
end architecture;

33. Elixir. Расширение языка программирования Erlang, Elixir предназначен для крупномасштабного программного обеспечения, такого как веб-сайты с высокой посещаемостью, или обработки больших объемов данных.

Erlang/OTP 21.0 [64-bit] [smp:2:2] [...]
 
Interactive Elixir (1.11.3) - press Ctrl+C to exit
iex(1)> "I " <> "love " <> "you!"
"I love you!"

34. F#. Разработанный Microsoft, F# нацелен на программную среду .NET, наиболее часто встречающуюся в Windows. Он в основном построен на функциях, но также поддерживает объектно-ориентированное программирование.

[<EntryPoint>]
let main argv = 
    printfn "I love you!"
    0

35. Prolog. Этот язык, зародившийся в сообществе разработчиков искусственного интеллекта, в основном используется как инструмент обучения и исследований.

$ swipl
<...banner...>
?- write('I love you!'), nl.

36. Lua. Этот язык сценариев часто используется, чтобы сделать другие приложения программируемыми, особенно в областях анимации и игр.

print("I love you!")

37. Lisp. Созданный в 1950-х годах, Lisp стал широко использоваться исследователями искусственного интеллекта, но в последние годы его популярность уменьшилась. Однако разновидности Lisp, такие как Clojure и Scheme (перечисленные отдельно), могут похвастаться активными сообществами.

CL-USER> (defun love ()
           (format t "I love you!~%"))
LOVE
CL-USER> (love)
I love you!
NIL
CL-USER>

38. Ada. Изначально разработанный для Министерства обороны США язык используется для приложений, в которых надежность имеет решающее значение, таких как, например, системы управления аэрокосмическими комплексами.

with Ada.Text_IO;
 
   procedure sayLove is
   begin
      Ada.Text_IO.put("I love you!");    -- Output some text!
   end sayLove;

39. Apache Groovy. Объектно-ориентированный язык программирования, работающий на платформе Java. На Groovy написан известный фреймворк для создания веб-приложений Grails.

public class Love {
    public static void main(String args[]) {
        System.out.println("I love you!");
    }
}

40. Scheme. Изначально задуманный как язык для учебных целей, теперь Scheme представляет собой семейство вариаций Lisp, которые используются в таких приложениях, как, например, App Inventor для Android. Это позволяет быстро разрабатывать мобильные сервисы.

(begin
  (display "I love you!")
  (newline))

41. Haskell. Язык, построенный на принципах чистого функционального программирования, разработан для приложений, в которых важна надежность.

main :: IO ()
main = putStrLn "I love you!"

42. COBOL. ПО COBOL, созданное в конце 1950-х годов для деловых и финансовых приложений, до сих пор управляет критически важными системами во многих крупных организациях.

PROCEDURE DIVISION.
    DISPLAY 'I love you!'.
    STOP RUN.

43. Clojure. Диалект Lisp, совместимый с той же виртуальной машиной, которая поддерживает программы Java.

(ns helloworld.core)
 
(defn -main
  "I can say 'I love you!'."
  []
  (println "I love you!"))

44. ABAP. ABAP (Advanced Business Application Programming) — это язык программирования для бизнес-сервисов, созданный SAP.

REPORT  ILOVEYOU.
 
 WRITE 'I love you!'.

45. D. Созданный как преемник C++, D имеет встроенный ассемблер для использования архитектурно зависимого оборудования.

import std.stdio;
 
void main()
{
    writeln("I love you!");
}

46. Forth. Изначально разработанный для управления радиотелескопами, этот язык программирования до сих пор используется для таких приложений, как загрузчики и прошивки.

: LOVE  ( -- )  CR ." I love you!" ;

47. OCaml. Объектно-ориентированный язык с упором на надежность программного обеспечения.

print_string "I love you!n";;

48. Tcl. Интерпретируемый язык, предназначенный для быстрого создания прототипов и поддержки графического пользовательского интерфейса Tk, используемого в основном системами Unix.

#! /usr/local/bin/wish8.5
button .love -text "I love you!" -command { exit }
pack .love

49. Erlang. Выпуск Erlang как языка с открытым исходным кодом, созданного Ericsson для встраиваемых приложений телефонии, в 1998 году увеличил его популярность среди программистов, разрабатывающих сервисы, которые должны обрабатывать множество задач одновременно.

    -module(love).
    -export([love_you/0]).
 
    love_you() -> io:fwrite("I love you!n").

50. Eiffel. Объектно-ориентированный язык, оказавший влияние на несколько других распространенных языков. Важный принцип заключается в том, что как можно больше работы по оптимизации кода следует доверить компилятору, а программист при этом сосредоточится на фундаментальной логике и удобочитаемости кода.

   on_paint (paint_dc: WEL_PAINT_DC; invalid_rect: WEL_RECT)
        do
            paint_dc.draw_centered_text("I love you!", client_rect)   
        end

51. CoffeeScript. Разработан для упрощения написания кода на JavaScript за счет реализации синтаксических соглашений из других языков.

console.log("I love you!")

52. J. В основном используемый для аналитики и математического программирования, код, написанный на J, часто бывает очень кратким.

#!/bin/jc
echo 'I love you!'
exit ''

53. Racket. Являясь вариацией Lisp, этот язык упрощает создание ваших собственных предметно-ориентированных языков.

> "I love you!"

Looking for a way to say I love you to your crush or a way to propose and you are a programmer and if also he or she is a programmer then today I will tell you the programmer’s way of proposing which is the I love you program in python.

This I love you python program will open a big black screen when you run it and it will start writing I love you at the end it will also draw a heart, you can see the preview below.

This program is made with turtle python library which is a graphics library for python so if you liked this I love you python program you can get the code of this I love you program below.

If you are a beginner in python programming then don’t worry I will show you everything you need to do to run this program and get you a girlfriend now no programmers will be single.

Install and Setup Python

If you are a python programmer who has python installed can skip this step. So to install python you need to go to the python website and click download, it will download the latest version of python.

Now you need to run the installer you can click next, and one screen will come where you need to check add python to path after that python will be installed if you want a more detailed guide you can check out this – Installing and setting up python.

Installing Python Turtle

As I have said you will need turtle which is a python library so you need to install this to install you need to open a command prompt paste the below code to install respective python library.

To install Turtle use this


pip install turtle

It will take some time after that you can go to the next step.

Create and Open Python File

Now you need to create a python file in a new folder and open it in a code editor if you don’t have one I will recommend you to use VS Code or you can use any if you have, In VS Code install the python extension you can read more here – Setting python in VS Code.

After that copy the below I love you code in the python file and you can run the code by opening command prompt and pasting the below command.


python filename.py

Enter your python filename where I said filename, this will open a black window and the program will start to run.

I Love You Code In Python


import turtle

draw = turtle.Turtle()

def curve():
    draw.pen(pencolor="white", pensize=3, speed=5)
    for i in range(200):
        draw.rt(1)
        draw.fd(1)

def heart():
    draw.pen(pencolor="white",fillcolor="red", pensize=3, speed=5)
    draw.shape("turtle")
    draw.shapesize(1,1,1)
    draw.begin_fill()
    draw.lt(50)
    draw.fd(113)
    curve()
    draw.lt(120)
    curve()
    draw.fd(112)
    draw.end_fill()

    draw.hideturtle()


window = turtle.Screen()
window.bgcolor('black')

draw.penup()
draw.goto(-80,300)
draw.pendown()
draw.shapesize(1,2,1)

draw.pen(pencolor="white",fillcolor="yellow", pensize=3, speed=8)

draw.begin_fill()

draw.fd(160)
draw.rt(90)
draw.fd(25)
draw.rt(90)
draw.fd(60)
draw.lt(90)

draw.fd(140)
draw.lt(90)
draw.fd(60)
draw.rt(90)
draw.fd(25)
draw.rt(90)
draw.fd(160)
draw.rt(90)
draw.fd(25)
draw.rt(90)
draw.fd(60)
draw.lt(90)
draw.fd(140)
draw.left(90)
draw.fd(60)
draw.rt(90)
draw.fd(25)

draw.end_fill()

draw.penup()
draw.goto(-550,-20)
draw.pendown()

draw.pen(pencolor="white",fillcolor="yellow", pensize=3, speed=2)
draw.begin_fill()

draw.rt(90)
draw.fd(25)
draw.rt(90)
draw.fd(165)
draw.lt(90)
draw.fd(115)
draw.rt(90)
draw.fd(25)
draw.rt(90)
draw.fd(140)
draw.rt(90)
draw.fd(190)
draw.rt(90)

draw.end_fill()

draw.penup()
draw.fd(140)

draw.fd(70)

draw.pen(pencolor="white",fillcolor="yellow", pensize=3, speed=8)
draw.begin_fill()

draw.rt(90)
draw.fd(190)
draw.lt(90)
draw.pendown()
draw.circle(60)
draw.lt(90)
draw.penup()
draw.fd(20)
draw.rt(90)
draw.pendown()
draw.circle(40)
draw.rt(90)
draw.penup()
draw.fd(20)
draw.lt(90)

draw.end_fill()

draw.fd(100)
draw.pendown()

draw.pen(pencolor="white",fillcolor="yellow", pensize=3, speed=8)
draw.begin_fill()

draw.lt(100)
draw.fd(120)
draw.rt(100)
draw.fd(20)
draw.rt(80)
draw.fd(100)
draw.lt(80)
draw.fd(20)
draw.lt(80)
draw.fd(100)
draw.rt(80)
draw.fd(20)
draw.rt(100)
draw.fd(120)
draw.rt(80)
draw.fd(50)
draw.lt(180)

draw.end_fill()

draw.penup()
draw.fd(100)
draw.pendown()

draw.pen(pencolor="white",fillcolor="yellow", pensize=3, speed=8)
draw.begin_fill()

draw.lt(90)
draw.fd(120)
draw.rt(90)
draw.fd(80)
draw.rt(90)
draw.fd(20)
draw.rt(90)
draw.fd(60)
draw.lt(90)
draw.fd(30)
draw.lt(90)
draw.fd(60)
draw.rt(90)
draw.fd(20)
draw.rt(90)
draw.fd(60)
draw.lt(90)
draw.fd(30)
draw.lt(90)
draw.fd(60)
draw.rt(90)
draw.fd(20)
draw.rt(90)
draw.fd(80)

draw.end_fill()

draw.penup()
draw.rt(180)
draw.fd(200)
draw.pendown()


draw.pen(pencolor="white",fillcolor="yellow", pensize=3, speed=2)
draw.begin_fill()

draw.lt(90)
draw.fd(50)
draw.lt(30)
draw.fd(80)
draw.rt(120)
draw.fd(20)
draw.rt(60)
draw.fd(60)
draw.lt(180)
draw.rt(60)
draw.fd(60)
draw.rt(60)
draw.fd(20)
draw.rt(120)
draw.fd(80)
draw.lt(30)
draw.fd(50)
draw.rt(90)
draw.fd(20)
draw.rt(180)

draw.end_fill()

draw.penup()
draw.fd(120)
draw.pendown()


draw.pen(pencolor="white",fillcolor="yellow", pensize=3, speed=8)
draw.begin_fill()

draw.circle(60)
draw.lt(90)
draw.penup()
draw.fd(20)
draw.pendown()
draw.rt(90)
draw.circle(40)
draw.rt(90)
draw.penup()
draw.fd(20)
draw.lt(90)

draw.end_fill()

draw.fd(100)
draw.circle(60, extent=60)
draw.pendown()

draw.pen(pencolor="white",fillcolor="yellow", pensize=3, speed=8)
draw.begin_fill()

draw.lt(30)

draw.fd(85)
draw.lt(90)
draw.fd(20)
draw.lt(90)
draw.fd(70)
draw.circle(-20, extent=180)
draw.fd(70)
draw.lt(90)

draw.fd(20)
draw.lt(90)
draw.fd(85)
draw.circle(40, extent=180)

draw.end_fill()

draw.penup()

draw.rt(180)
draw.fd(35)
draw.lt(90)
draw.fd(140)
draw.lt(90)
draw.pendown()

heart()

turtle.done()

I Love You Drawing In Python Turtle

I hope this I love you python program impressed your crush and became your girlfriend. If not don’t worry, next time or you can run this it will say I love you to you.

This was for today. If you found this helpful, great if you want more interesting python programs like this than join our Telegram Channel to get the latest updates of our blog.

Here are some more python guides:

  • Python program to check even or odd numbers.
  • What will be the output of the following python code.
  • Best Python Learning apps for beginners.

Thank you for watching, have a nice day 🙂

python program to say I love you

Introduction

Are you in love with someone? If your answer is yes and you’re a programmer then this article will help you a lot.

Every lover tries to show his/her love to his/her beloved person in a different way. Their are so many ways to surprise him/her. For example, writing a poem, dedicating a special song, cute notes, eye-catching gifts, letters, and much more.

These are popular ways majority of people follow. But as a python programmer the idea came to my mind, if a program could be created to say I Love You then it would be a great and unpredictable method.

In this tutorial, I will show you How You can say I Love You to your beloved person using a Python Code.

☛Visit also:A Unique Way to Wish Happy Birthday🎂 in Python Code

Requirements

You need to install these python libraries before writing the code for your beloved person.

Turtle: pip install PythonTurtle

pygame(Optional): pip install pygame

Image — Output of I Love You Program

Import the Modules

Let’s create a python file with the name ‘ILoveYou.py‘ and start writing your code by importing these modules. Next, create an instance of the Turtle class.


import turtle
import time
from pygame import mixer

# Intialize Turtle module
t = turtle.Turtle()

Initialize the PyGame mixer(Optional)

Initialize the PyGame mixer to play an music in the background. The reason I said it optional because, you can avoid adding the music part. But a music can represent output of the program more better.

See, the yellow line. You just need to mention the path of the music file here. If you download the entire file from my GitHub page(through the Download button given below), you’ll find a music file I already added there.


# Initialize pygame mixer
mixer.pre_init(frequency=48000, size=-16, channels=2, buffer=512)
mixer.init()
mixer.music.load("music.mp3")

Set Background Window

Set the background color of the Turtle window, size, etc. I used black color for the background. You can choose another one.

The window size I selected here is 800×700. You can choose a different size as per your screen size.


# Window decorations
window = turtle.Screen()
window.bgcolor('black')
window.screensize(800, 700)
window.setup(width=1.0, height=1.0, startx=None, starty=None)

Play the Music(Optional)

Play the music you have added just one step before. Comment this line if you don’t want to play the music in the background.


# Play Music
mixer.music.play()

Draw ‘I’ letter

Now start drawing with the ‘I’ letter. It’s so simple. Here, I just command the Turtle with different numbers for moving forward, backward, left, right, and turn around an angle.


t.penup()
t.goto(-80,300)
time.sleep(1)
t.pendown()
t.shapesize(1,2,1)

# Letter: 'I'
t.pen(pencolor="white",fillcolor="dark violet", pensize=3, speed=8)

t.begin_fill()

t.fd(160)
t.rt(90)
t.fd(25)
t.rt(90)
t.fd(60)
t.lt(90)
# Height of the 'I'
t.fd(140)
t.lt(90)
t.fd(60)
t.rt(90)
t.fd(25)
t.rt(90)
t.fd(160)
t.rt(90)
t.fd(25)
t.rt(90)
t.fd(60)
t.lt(90)
t.fd(140)
t.left(90)
t.fd(60)
t.rt(90)
t.fd(25)

t.end_fill()

# End of 'I'

Don't forget to save your I love you code.

Draw ‘Love’ word

I hope, your code is drawing the ‘I’ letter successfully. Now we need write the ‘Love‘ word to express your thoughts about him/her. 

The logic is same as the previous. This time I just compacted the code into one to draw the entire word instead of drawing a single letter.


# End of 'I'


t.penup()
t.goto(-550,-20)
t.pendown()


# Draw 'Love'
# Letter: 'L'
t.pen(pencolor="white",fillcolor="dark violet", pensize=3, speed=2)
t.begin_fill()

t.rt(90)
t.fd(25)
t.rt(90)
t.fd(165)
t.lt(90)
t.fd(115)
t.rt(90)
t.fd(25)
t.rt(90)
t.fd(140)
t.rt(90)
t.fd(190)
t.rt(90)

t.end_fill()
# End of 'L'

t.penup()
t.fd(140)

#Gap between 'L' and 'O'
t.fd(70)

# Letter: 'O'
t.pen(pencolor="white",fillcolor="cyan", pensize=3, speed=8)
t.begin_fill()

t.rt(90)
t.fd(190)
t.lt(90)
t.pendown()
t.circle(60)
t.lt(90)
t.penup()
t.fd(20)
t.rt(90)
t.pendown()
t.circle(40)
t.rt(90)
t.penup()
t.fd(20)
t.lt(90)

t.end_fill()
# End of 'O'

#Gap between 'O' and 'V'
t.fd(100)
t.pendown()

# Letter: 'V'
t.pen(pencolor="white",fillcolor="dark violet", pensize=3, speed=8)
t.begin_fill()

t.lt(100)
t.fd(120)
t.rt(100)
t.fd(20)
t.rt(80)
t.fd(100)
t.lt(80)
t.fd(20)
t.lt(80)
t.fd(100)
t.rt(80)
t.fd(20)
t.rt(100)
t.fd(120)
t.rt(80)
t.fd(50)
t.lt(180)

t.end_fill()
# End of 'V'

t.penup()
# Gap between 'V' and 'E'
t.fd(100)
t.pendown()

# Letter: 'E'
t.pen(pencolor="white",fillcolor="dark violet", pensize=3, speed=8)
t.begin_fill()

t.lt(90)
t.fd(120)
t.rt(90)
t.fd(80)
t.rt(90)
t.fd(20)
t.rt(90)
t.fd(60)
t.lt(90)
t.fd(30)
t.lt(90)
t.fd(60)
t.rt(90)
t.fd(20)
t.rt(90)
t.fd(60)
t.lt(90)
t.fd(30)
t.lt(90)
t.fd(60)
t.rt(90)
t.fd(20)
t.rt(90)
t.fd(80)

t.end_fill()
# End of 'E'

Draw ‘You’ word

We are almost at end of our program. Now draw the ‘You‘ word as the same way like before. Use this code to do it.

 
# End of 'E'

t.penup()
t.rt(180)
#Gap between 'E' and 'Y'
t.fd(200)
t.pendown()

# Letter: 'Y'
t.pen(pencolor="white",fillcolor="dark violet", pensize=3, speed=2)
t.begin_fill()

t.lt(90)
t.fd(50)
t.lt(30)
t.fd(80)
t.rt(120)
t.fd(20)
t.rt(60)
t.fd(60)
t.lt(180)
t.rt(60)
t.fd(60)
t.rt(60)
t.fd(20)
t.rt(120)
t.fd(80)
t.lt(30)
t.fd(50)
t.rt(90)
t.fd(20)
t.rt(180)

t.end_fill()
# End of 'Y'

t.penup()
t.fd(120)
t.pendown()

# Letter: 'O'
t.pen(pencolor="white",fillcolor="cyan", pensize=3, speed=8)
t.begin_fill()

t.circle(60)
t.lt(90)
t.penup()
t.fd(20)
t.pendown()
t.rt(90)
t.circle(40)
t.rt(90)
t.penup()
t.fd(20)
t.lt(90)

t.end_fill()
# End of 'O'

# Gap between "O" and "U"
t.fd(100)
t.circle(60, extent=60)
t.pendown()

# Letter: 'U'
t.pen(pencolor="white",fillcolor="dark violet", pensize=3, speed=8)
t.begin_fill()

t.lt(30)
# Height of 'U'
t.fd(85)
t.lt(90)
t.fd(20)
t.lt(90)
t.fd(70)
t.circle(-20, extent=180)
t.fd(70)
t.lt(90)
t.fd(20)
t.lt(90)
t.fd(85)
t.circle(40, extent=180)

t.end_fill()
# End of 'U'

t.penup()
# t.goto(300,130)
t.rt(180)
t.fd(35)
t.lt(90)
t.fd(140)
t.lt(90)
t.pendown()

Define ‘curve()’ function

Our program is drawing ‘I Love You’ perfectly. Everything is perfect but if a love sign could be added at the end, how it would look? Great! right? OK, let’s do it quickly.

Define a ‘curve()‘ function at the top of the program which will draw the big love sign for your loved person. See the yellow marked line, find this line at the top of the code and paste the next code there. It will draw curves for the love sign.


t = turtle.Turtle()

def curve():
    t.pen(pencolor="white", pensize=3, speed=5)
    for i in range(200):
        t.rt(1)
        t.fd(1)

Define a function to draw a big love sign

Add this function just after the previous code.


# Function to draw the love sign
def love_sign():
    t.pen(pencolor="white",fillcolor="hot pink", pensize=3, speed=5)
    t.shape("turtle")
    t.shapesize(1,1,1)
    t.begin_fill()
    t.lt(50)
    t.fd(113)
    curve()
    t.lt(120)
    curve()
    t.fd(112)
    t.end_fill()

    t.hideturtle()


# Window decorations

Call the love_sign() function

Add these two lines at the very end of your main python program.


# Calling the function love_sign
love_sign()

time.sleep(5)

Now your code is ready to send.

Full Code

Here is the full code for your convenience.


"""I Love You in Python"""
import turtle
import time
from pygame import mixer

# Intialize Turtle module
t = turtle.Turtle()

# Initialize pygame mixer(Optinal)
mixer.pre_init(frequency=48000, size=-16, channels=2, buffer=512)
mixer.init()
mixer.music.load("music.mp3")

def curve():
    t.pen(pencolor="white", pensize=3, speed=5)
    for i in range(200):
        t.rt(1)
        t.fd(1)

# Function to draw the love sign
def love_sign():
    t.pen(pencolor="white",fillcolor="hot pink", pensize=3, speed=5)
    t.shape("turtle")
    t.shapesize(1,1,1)
    t.begin_fill()
    t.lt(50)
    t.fd(113)
    curve()
    t.lt(120)
    curve()
    t.fd(112)
    t.end_fill()

    t.hideturtle()


# Window decorations
window = turtle.Screen()
window.bgcolor('black')
window.screensize(800, 700)
window.setup(width=1.0, height=1.0, startx=None, starty=None)

# Play Music(Optional)
mixer.music.play()

t.penup()
t.goto(-80,300)
time.sleep(1)
t.pendown()
t.shapesize(1,2,1)

# Letter: 'I'
t.pen(pencolor="white",fillcolor="dark violet", pensize=3, speed=8)

t.begin_fill()

t.fd(160)
t.rt(90)
t.fd(25)
t.rt(90)
t.fd(60)
t.lt(90)
# Height of the 'I'
t.fd(140)
t.lt(90)
t.fd(60)
t.rt(90)
t.fd(25)
t.rt(90)
t.fd(160)
t.rt(90)
t.fd(25)
t.rt(90)
t.fd(60)
t.lt(90)
t.fd(140)
t.left(90)
t.fd(60)
t.rt(90)
t.fd(25)

t.end_fill()

# End of 'I'


t.penup()
t.goto(-550,-20)
t.pendown()


# Draw 'Love'
# Letter: 'L'
t.pen(pencolor="white",fillcolor="dark violet", pensize=3, speed=2)
t.begin_fill()

t.rt(90)
t.fd(25)
t.rt(90)
t.fd(165)
t.lt(90)
t.fd(115)
t.rt(90)
t.fd(25)
t.rt(90)
t.fd(140)
t.rt(90)
t.fd(190)
t.rt(90)

t.end_fill()
# End of 'L'

t.penup()
t.fd(140)

#Gap between 'L' and 'O'
t.fd(70)

# Letter: 'O'
t.pen(pencolor="white",fillcolor="cyan", pensize=3, speed=8)
t.begin_fill()

t.rt(90)
t.fd(190)
t.lt(90)
t.pendown()
t.circle(60)
t.lt(90)
t.penup()
t.fd(20)
t.rt(90)
t.pendown()
t.circle(40)
t.rt(90)
t.penup()
t.fd(20)
t.lt(90)

t.end_fill()
# End of 'O'

#Gap between 'O' and 'V'
t.fd(100)
t.pendown()

# Letter: 'V'
t.pen(pencolor="white",fillcolor="dark violet", pensize=3, speed=8)
t.begin_fill()

t.lt(100)
t.fd(120)
t.rt(100)
t.fd(20)
t.rt(80)
t.fd(100)
t.lt(80)
t.fd(20)
t.lt(80)
t.fd(100)
t.rt(80)
t.fd(20)
t.rt(100)
t.fd(120)
t.rt(80)
t.fd(50)
t.lt(180)

t.end_fill()
# End of 'V'

t.penup()
# Gap between 'V' and 'E'
t.fd(100)
t.pendown()

# Letter: 'E'
t.pen(pencolor="white",fillcolor="dark violet", pensize=3, speed=8)
t.begin_fill()

t.lt(90)
t.fd(120)
t.rt(90)
t.fd(80)
t.rt(90)
t.fd(20)
t.rt(90)
t.fd(60)
t.lt(90)
t.fd(30)
t.lt(90)
t.fd(60)
t.rt(90)
t.fd(20)
t.rt(90)
t.fd(60)
t.lt(90)
t.fd(30)
t.lt(90)
t.fd(60)
t.rt(90)
t.fd(20)
t.rt(90)
t.fd(80)

t.end_fill()
# End of 'E'

t.penup()
t.rt(180)
#Gap between 'E' and 'Y'
t.fd(200)
t.pendown()

# Letter: 'Y'
t.pen(pencolor="white",fillcolor="dark violet", pensize=3, speed=2)
t.begin_fill()

t.lt(90)
t.fd(50)
t.lt(30)
t.fd(80)
t.rt(120)
t.fd(20)
t.rt(60)
t.fd(60)
t.lt(180)
t.rt(60)
t.fd(60)
t.rt(60)
t.fd(20)
t.rt(120)
t.fd(80)
t.lt(30)
t.fd(50)
t.rt(90)
t.fd(20)
t.rt(180)

t.end_fill()
# End of 'Y'

t.penup()
t.fd(120)
t.pendown()

# Letter: 'O'
t.pen(pencolor="white",fillcolor="cyan", pensize=3, speed=8)
t.begin_fill()

t.circle(60)
t.lt(90)
t.penup()
t.fd(20)
t.pendown()
t.rt(90)
t.circle(40)
t.rt(90)
t.penup()
t.fd(20)
t.lt(90)

t.end_fill()
# End of 'O'

# Gap between "O" and "U"
t.fd(100)
t.circle(60, extent=60)
t.pendown()

# Letter: 'U'
t.pen(pencolor="white",fillcolor="dark violet", pensize=3, speed=8)
t.begin_fill()

t.lt(30)
# Height of 'U'
t.fd(85)
t.lt(90)
t.fd(20)
t.lt(90)
t.fd(70)
t.circle(-20, extent=180)
t.fd(70)
t.lt(90)
t.fd(20)
t.lt(90)
t.fd(85)
t.circle(40, extent=180)

t.end_fill()
# End of 'U'

t.penup()
# t.goto(300,130)
t.rt(180)
t.fd(35)
t.lt(90)
t.fd(140)
t.lt(90)
t.pendown()

# Calling the function love_sign
love_sign()

time.sleep(5)

Download the code📩

Output

Visit also: Send Secret Messages to Your Friends using Python

Summary

In this tutorial, we build a python program for our beloved person. It will help to express your love as a programmer. The program draws ‘I Love You💕’ on the black screen and plays a beautiful music in the background as well as.

Do use this code in the real-life too. You can modify this code by changing the color, word size, turtle speed, music selection, etc. It’s completely your choice. I hope he/she will love your work. 

There
is another way to say I Love You through python
programming. I have made a separate article on this topic in detail. Here, the program prints «I Love You» message with the person’s name in the form of ASCII text
art.
Check this out also: Wish Your Friends with Stylish TExt in Python

To get more lovely python topics, visit the separate page created only for Unique Examples. Some examples are given below.

👉Extract Text from an Image using a Python Program

👉Draw the Sketch of Lionel Messi using a Python Program

👉Extract Metadata from an Image using Python

👉Check the strength of your password using python

Thanks for reading!💙

PySeek

Вопрос к компьютерщикам) как на вашем языке звучало бы признание в любви и нежных чувствах? ну вот как медики друг другу об этом могут сказать, я знаю, а как технари, компьютерщики, программисты об этом говорят? мой мужчина все время бурчит, что мы на разных языках говорим, и я его не понимаю))) скоро у него день рождения — хочу составить для него поздравление с этим днем и признание в любви на «его» языке, чтоб уж точняк все понял))) хелп ми, плиз! :gy:

Аноним автор темы:

ну вот как медики друг другу об этом могут сказать, я знаю

ну и как же? :popcorm:

Не совсем программисты, но может на мысль натолкнет

Двоичным кодом записать Я тебя люблю = 33 20 6 2 33 13 32 2 13 32 и в итоге получаем:

0000100001

0000010100

0000000110

0000000010

0000100001

0000001101

0000100000

0000000010

0000001101

0000100000

КареглаЗАЯ Лера:

Двоичным кодом записать

только не забыть указать, какая кодировка использована — KOI-8R, потому что в разных кодировках эти коды будут совсем другое означать :acute:

то есть Я тебя люблю будет выглядеть так

КареглаЗАЯ Лера:

33 20 6 2 33 13 32 2 13 32

или так?

КареглаЗАЯ Лера:

0000100001

0000010100

0000000110

0000000010

0000100001

0000001101

0000100000

0000000010

0000001101

0000100000

и еще указать, что

ДоброжелателЬ:

кодировка использована — KOI-8R

все правильно?)))

КареглаЗАЯ Лера,
ДоброжелателЬ,
ой, девули, спасибо)

может у кого-нибудь еще есть идеи? как с днем рождения поздравить, например?

Не ребят, без кодировки надо, если не расшифрует, в баню такого программиста

КареглаЗАЯ Лера:

Двоичным кодом записать Я тебя люблю = 33 20 6 2 33 13 32 2 13 32

А вас не смущает, что у вас 10 символов написано, а в строке ‘я тебя люблю’ их 12? И где у вас второй пробел (0x20) после слова ‘тебя’? Или он неожиданно из шестнадцатеричного 0x20 превратился в десятичный 32? :yahoo: Пишите уж тогда I love you, это ASCII, в любой однобайтной кодировке одинаково.

J236,
В. И. Ленкин,
ой, ну вы даете, люди! напишите уже, как надо) а то, получится, что я его пошлю куда подальше, тогда капец))) я ведь вам доверяю))))

J236:

если не расшифрует, в баню такого программиста

расшифрует! он крутой руководитель IT-отдела :king:

А вообще зашифрованный текст это не есть сильно оригинально. Лучше уж тогда какой-нибудь фрагмент кода послать, что-нибудь типа

function love ( x, y ) {
    if (x === y) return true;
    else return false;
}
love ( я, ты ) === true;

В. И. Ленкин:

function love ( x, y ) {
    if (x === y) return true;
    else return false;
}
love ( я, ты ) === true;

вот прям все это целиком отправлять?)))

Это целиком, именно :acute: Но это тоже не сильно смешно. Лучше уж тогда просто зашифровать поздравление в word’овском файле с паролем, а пароль написать маркером на собственном теле не буду говорить где :eerm: Пока вас не разденет и не прочитает пароль — текст не расшифрует. Ну и не говорить где, естественно, пусть всю вас исследует :please:

В. И. Ленкин:

а пароль написать маркером на собственном теле не буду говорить где Пока вас не разденет и не прочитает пароль — текст не расшифрует.

:clapping: :gy:
давайте еще идей!!!

В. И. Ленкин:

function love ( x, y ) {
    if (x === y) return true;
    else return false;
}
love ( я, ты ) === true;

Напомнило

Ёжик в тумане:

ну и как же?

медики-то? ну например так)))
все, блин, понятно!)))

Гиперчувствительность замедленного типа
И не помогут фенкарол и тавегил.
Ты мне больней кишечного полипа,
Ну почему тебя я полюбил…
Пароксизмальная моя тахикардия,
Что не купирует сердечный этмозол,
Неизлечимая ты церебропатия,
Ты — внутривенный морфия укол.
Как пациент с рефлюкс-эзофагитом,
И как таксист со справкой «геморой» ,
Я как студент с хроническим гастритом
Всё мучаюсь и мучаюсь тобой.
Ты — язва с перфорацией на душу,
Вновь задыхаюсь, как астматик с аспирина,
Но твой покой никак я не нарушу
— Ведь регулируешь мой синтез гистамина.
Ты — постоянство моего гомеостаза,
И хуже желчекаменных болезней
Без профилактики от уролитиаза,
Ты — кислорода для меня полезней.
Не вырезать мне, как аппендицит
Тебя из сердца, рваного амуром,
И не убрать, как пункцией асцит,
Не обработать деохлором с первомуром.
Мне не залить страданья этанолом
И не поможет ингаляция эфира,
Не успокоить сердце корвалолом, Ах если бы… меня ты… полюбила..

О, самовызывающаяся функция — это идея :acute: Сейчас мы коллективными усилиями рефакторинг кода проведем:

(function love ( x, y ) {
if (x === y) return true;
else return false;
})( я, ты );

Так лучше :clapping:

Wine альтернативная:

Напомнило

что это?))
то же самое признание? то есть можно вот эту картинку отправить?))

люд-люди-люди! дайте идей! вы мне нравитесь!

Аноним автор темы:

Гиперчувствительность замедленного типа
И не помогут фенкарол и тавегил.

Если речь просто о стишках, напичканных профлексикой, то это не проблема…

Я войду в тебя, как SATA, —
Я тебя любил когда-то…

Ну и так далее, только в женском варианте.

Ты мой интерфейс IDE —
Подарю тебе биде…

Боже, какой бред :nea:

В. И. Ленкин:

Если речь просто о стишках, напичканных профлексикой, то это не проблема…

не-не, надо мужской вариант))) брутальный) так чтоб верняк! чтоб суровый дядя с бородой улыбнулся))) и растаял…..)
стихи — это я на вопрос отвечала

В. И. Ленкин,
вот Вы прям понимаете, о чем речь :pozdr2:

Используем свои знания Python для достижения счастья в личной жизни.

Мы постоянно слышим о людях, использующих программирование, чтобы анализировать эффективность определенных лекарств, делать выводы, оценивать профили клиентов, делать прогнозы, узнавать, сколько будет стоить недвижимость через 10 лет. Этот список можно продолжать до бесконечности.

Когда я был в разгаре ухаживания за девушкой, меня внезапно поразила мысль, можно ли использовать программирование, чтобы сделать признание в любви каким-то особенным, тем более что девушка не была знатоком в этой области. (Если ваша девушка как раз эксперт, вам придется потрудиться, чтобы ее впечатлить).

Эти случайные мысли постепенно превратились в твердую идею, которая и привела к созданию этого Telegram бота. Я надеюсь, что эта статья поможет вам признаться в любви или сделать романтическое свидание незабываемым. Некоторые могут сказать, что я порчу рынок. Но я уверен, что когда дело доходит до признания в своих чувствах, это должно быть особенным и запоминающимся.

Получение API ключа для Telegram бота от BotFather

Для создания бота я использую язык программирования Python.

Как известно большинству программистов, для взаимодействия с внешним сайтом или приложением нам понадобится ключ интерфейса прикладного программирования (API ключ). В нашем случае он нужен, чтобы Python мог общаться с Telegram.

Перед этим нам нужно будет создать бота в Telegram. Для этого в приложении Telegram найдите бота под названием «BotFather».

После запуска бота нам будет показан список всех доступных команд. Для создания нового бота нужно использовать команду /newbot.

Далее BotFather предложит вам ввести имя для вашего бота. Обратите внимание на то, что именно по этому имени люди будут искать ваш бот в Телеграм. Впрочем, впоследствии вы сможете это имя менять.

[python_ad_block]

Указав имя бота, нужно задать имя пользователя. Оно должно оканчиваться на слово bot, то есть быть в формате xxxbot. Заметьте, что изменить это имя в дальнейшем будет нельзя.

Как только ваш бот будет создан, вы сможете найти его в Telegram по имени (в моем случае это myfirstbot123).

Далее нам надо скопировать куда-нибудь в безопасное место уникальный токен, предоставленный нам для управления ботом при помощи API.

Интеграция Python с Telegram

Получив ключ API, мы можем приступить к созданию бота на Python.

Мы применим библиотеку python-telegram-bot. Эта библиотека использует модуль logging, который сперва надо настроить. А затем мы сохраним в коде наш API ключ Telegram.

# импортируем необходимые библиотеки
import logging
from telegram.ext import Updater, CommandHandler, MessageHandler, Filters, CallbackQueryHandler, CallbackContext
from telegram import InlineKeyboardButton, InlineKeyboardMarkup, Update
# настраиваем модуль logging
logging.basicConfig(level=logging.DEBUG, format='%(asctime)s - %(name)s - %(levelname)s - %(message)s')
# сохраняем наш api токен
TOKEN = 'INSERT YOUR TOKEN HERE!'

Далее зададим несколько функций, которые помогут нам начать работу с нашим ботом.

Первая необходимая команда — это /start. Эта команда выполняется, когда пользователь запускает бот. Для простоты давайте при запуске бота просто вернем сообщение «Testing 123». Мы встраиваем это сообщение с помощью метода update.message.reply_text. Благодаря этому всякий раз, получая команду или сообщение, наш бот будет отвечать на него текстом.

То же самое мы делаем для команды /hello, которая возвращает сообщение Hello World! и смайлик ?, как только пользователь запустит ее. Справочник по юникодам эмодзи вы можете найти здесь. Обратите внимание, что для облегчения отладки я также настроил регистратор ошибок, чтобы мне всегда показывалось сообщение об ошибке.

def start(update, context):
    # посылает сообщение в ответ на команду /start
    update.message.reply_text('Testing 123')
    
def hello(update, context):
    # посылает сообщение в ответ на команду /hello 
    update.message.reply_text('Hello World! U0001F600')
# для отладки
def error(update, context):
    logger.warning('Update "%s" caused error "%s"', update, context.error)

На последнем шаге создадим функцию main(). Метод Updater считает наш API-ключ и зарегистрирует все обработчики, которые мы настроили для нашего бота. Обратите внимание, что для каждой команды, которую мы собираемся создать, нам нужно будет добавить обработчик этой самой команды. Бот запустится при запуске updater.start_polling().

# to start the bot
def main():
    # setup updating together with our telegram api token
    updater = Updater(TOKEN, use_context=True)
# get the dispatcher to register handlers
    dp = updater.dispatcher
# add command handlers for different command
    dp.add_handler(CommandHandler("start", start))
    dp.add_handler(CommandHandler("hello", hello))
# error logging
    dp.add_error_handler(error)
# start the bot
    updater.start_polling()
# set the bot to run until you force it to stop
    updater.idle()
if __name__ == '__main__':
    main()

Собрав все воедино, протестируем нашего бота в Telegram. Запускаем бота и получаем сообщение Testing123. Аналогично, в ответ на команду /hello мы получаем сообщение Hello World! ?.

Программируем кнопку yes/no

В случае признания в любви мы ждем однозначного ответа: «да» или «нет». Пока что наш Telegram бот может возвращать сообщения только после того, как пользователь выполнит определенную команду. Есть ли у бота возможность отображать меню, чтобы пользователь мог выбрать и нажать нужную кнопку? Да, в Telegram боте есть такая функция. Она так и называется — buttons (кнопки).

Чем же кнопки отличаются от команд, которые мы программировали выше? Тем, что для кнопки нам нужно написать две функции: одну для отображения кнопок после того, как пользователь запустит команду, а вторую — для возврата определенных результатов на основе выбора пользователя.

Приведенный ниже код даст нашему боту возможность отобразить вопрос “BE MY GIRL OK?” (думаю, эти слова любви в переводе не нуждаются — прим. переводчика) вместе с двумя кнопками «YES» и «NO» при запуске команды /confession. Не забудьте добавить обработчик этой команды в основной код функции, как указано выше.

# отображение кнопки
def confession(update, context: CallbackContext)-> None:
    keyboard = [
        [InlineKeyboardButton("Yes", callback_data='yes'),
        InlineKeyboardButton("No", callback_data='no')]
    ]
    reply_markup = InlineKeyboardMarkup(keyboard)
    update.message.reply_text('BE MY GIRL OK?', reply_markup=reply_markup)
dp.add_handler(CommandHandler("confession", confession))

Как можно увидеть из данного скриншота, сообщение “BE MY GIRL OK?” отображается вместе с двумя кнопками.

Нажатие на эти кнопки в настоящий момент нам ничего не даст, поскольку мы этот процесс еще не настроили. Для этого мы настроим другую команду — /confession_reply. Она будет работать в зависимости от нажатия пользователем определенных кнопок (а именно «YES» или «NO»), используя программный синтаксис if-else.

Если пользователь нажимает Yes, то мы отвечаем вот таким вот эмодзи: ??.

В ответе на нажатие No я позволил себе некоторую дерзость. Мой ответ будет: “Please try again, we make typing errors sometimes ? (Пожалуйста, попробуйте еще раз, ведь мы иногда делаем опечатки)”.

Обратите внимание, что вместо добавления обычного обработчика команд в нашу основную функцию нам нужно будет добавить обработчик запроса обратного вызова для этой функции.

def confession_reply(update, context):
    query = update.callback_query
    if query.data == 'yes':
        context.bot.edit_message_text(chat_id=query.message.chat_id,
                        message_id=query.message.message_id,
                        text='U0001F46BU0001F49D', disable_web_page_preview = 0)
    else:
        context.bot.edit_message_text(chat_id=query.message.chat_id,
                        message_id=query.message.message_id,
                        text='Please try again, we make typing errors sometimes U0001F624' , disable_web_page_preview = 0)
dp.add_handler(CallbackQueryHandler(confession_reply))

Как можно заметить на скриншоте, я настроил своего бота вот так, но вы должны проявить творческий подход и придумать что-нибудь свое.

Размещение Telegram бота (необязательно)

Эта часть в принципе является необязательной. Но до сих пор мы запускали нашего бота с локального компьютера, а это значит, что как только мы его выключим, он прекратит свою работу. Чтобы решить эту проблему, нам нужно разместить нашего бота на облачном сервере, которой обеспечит его бесперебойную работу в режиме 24/7. И когда придет время свидания, он нас не подведет.

Лично я для развертывания бота использовал сервис Heroku, предлагающий бесплатные услуги для пользователей, которым не требуется высокая пропускная способность. Мы здесь не будем вдаваться в подробности, так как в интернете уже имеется множество руководств про то, как это лучше сделать.

Идея признания в любви

Вот и все, что я могу сказать по поводу технической стороны создания бота для признаний в любви. Но вы, вероятно, уже почувствовали, что чего-то не хватает или что это слишком просто для признания. Разумеется, вам решать, насколько творчески вы сможете подойти к решающему свиданию, но я позволю себе поделиться некоторыми своими мыслями на этот счет.

Как видно на моем скриншоте ниже, после запуска команды /start будет отображаться приветственное сообщение и список команд, в которых первые 10 будут отвечать на сообщения, а последняя будет командой с кнопками, с помощью которой я и задам решающий вопрос.

Возможно вам интересно, что я написал для каждой из первых десяти команд и какие сообщения будут возвращаться при их вызове. На самом деле они просто являются небольшими воспоминаниями о наших предыдущих свиданиях. Это выглядит примерно так:

И вы также можете задаться вопросом, почему названия команд такие странные, например как /sob, /banhmi или даже /potato? И почему между командами такие странные интервалы? Ответ дается в моей последней команде /throwback .

Как видно из последнего скриншота, я дал командам такие имена, чтобы из их последних букв сложилась фраза: “BE MY GIRL OK?”. Чтобы к тому моменту, когда моя подруга уже догадается об истинном смысле этого бота, она нажала на последнюю команду /semolaide (на китайском языке это значит «Что это») и получила решающий вопрос.

Заключение

Вот и все, на этом руководство по созданию Telegram бота закончено. Надеюсь, вы почерпнете из него вдохновение и ваше главное свидание пройдет великолепно. Помните, что в конце концов вам не нужно беспокоиться о том, как другие относятся к тому, как вы выражаете свою любовь, важно лишь то, что это подарит вам и вашему партнеру приятные воспоминания на всю оставшуюся жизнь!

Всем удачи!

Перевод статьи «Building a Telegram Bot with Python for a love confession».

Мою богиню зовут Баобао. Сегодня я хочу написать небольшого питона, чтобы выразить ей свою жирную любовь.

import time
# Показать любовные ключевые слова
words = 'LoveBaoBao'
print("     ")
print("     ")
print("Саланги в сумку")
print("     ")
print("      ")
for item in words.split():
    # Чтобы добиться эффекта распечатки пробелов между символами, добавьте сюда: item = item + ''
    letterlist = []#letterlist - это общий список всех печатных символов, который содержит подсписок y list_X
    for y in range(12, -12, -1):
        list_X = []#list_X - список напечатанных символов на оси X, который содержит строку букв
        letters = ''#letters - это строка в list_X, которая фактически является всеми символами, которые будут напечатаны в этой строке
        for x in range(-30, 30):# * - умножение, ** - сила
            expression = ((x*0.05)**2+(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3
            if expression <= 0:
                letters += item[(x-y) % len(item)]
            else:
                letters += ' '
        list_X.append(letters)
        letterlist += list_X
    print('n'.join(letterlist))
    time.sleep(150);

4 / 1 / 0

Регистрация: 01.05.2014

Сообщений: 12

1

11.09.2014, 22:09. Показов 9130. Ответов 8


Здравствуйте! У меня очень необычный вопрос. Решила сделать мужу необычный подарок на день программиста. Подскажите как написать фразу I Love You на с++, что б интересно было её разгадать.
Заранее извиняюсь за «Детский» вопрос. Спасибо

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь



0



Programming

Эксперт

94731 / 64177 / 26122

Регистрация: 12.04.2006

Сообщений: 116,782

11.09.2014, 22:09

Ответы с готовыми решениями:

Что бы было вам интересно
Был сайт Храма, работал несколько лет. Попросили переделать, ибо старый совсем уж был плох.

Как написать код на html так, что было как на картинке?
Как написать код на html так, что было как на картинке?

Подскажите, как написать функцию, преобразующую фразу в список в Comon Lisp
Добрый вечер! Помогите пожалуйста написать функцию, которая вводит фразу на естественном языке и…

Что написать такого, чтобы можно было отправлять потенциальному работодателю?
Работодатель просит показать ему код, которым я горжусь :) Как по мне, так звучит бредово. Если я…

8

Gravitas

-4 / 2 / 0

Регистрация: 26.01.2013

Сообщений: 102

11.09.2014, 22:28

2

C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream.h>
#include <conio.h>
 
using namespace std;
 
int main ()
{
    cout << "Текст!";
    _getch();
    return 0;
}



0



И целого heap’а мало

95 / 56 / 17

Регистрация: 31.07.2014

Сообщений: 291

11.09.2014, 22:29

3

skaromantik, выдерните мужика из-за компьютера и выведите на улицу, желательно с культурной программой.



0



5494 / 4889 / 831

Регистрация: 04.06.2011

Сообщений: 13,587

12.09.2014, 01:01

4

Цитата
Сообщение от skaromantik
Посмотреть сообщение

что б интересно было её разгадать

Программу разгадать? Вот тема, где есть разные необычные выводы «Hello, world!». Может подберётё что-нибудь подходящее.
Написать программу чтобы выводила надпись Hello world



1



Qwertiy

831 / 639 / 100

Регистрация: 20.08.2013

Сообщений: 2,524

12.09.2014, 01:18

5

Цитата
Сообщение от skaromantik
Посмотреть сообщение

Подскажите как написать фразу I Love You на с++, что б интересно было её разгадать.

Не знаю, насколько интересно разгадывать, но необычно — точно

C++
1
2
3
4
5
6
7
8
#include <cstdio>
 
int main(void)
{
#define F(x) #x " " #x " " #x
#define A(u) , 4 , &(const unsigned &)(u)
return ! printf(F(%.*s) "n" A(640024649) A(1702260556) A(561344345));
}

И вариант без предупреждений от g++: http://codepad.org/Oel8XZPw

C++
1
2
3
4
5
6
7
8
#include <cstdio>
 
int main(void)
{
#define F(x) #x " " #x " " #x
#define A(u) , 4 , (const char *)&(const unsigned &)(u)
return ! printf(F(%.*s) "n" A(640024649) A(1702260556) A(561344345));
}



0



Hsac

13 / 13 / 3

Регистрация: 30.06.2013

Сообщений: 168

12.09.2014, 04:00

6

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <conio.h>
 
using namespace std;
int main()
{
string love;
cout << "do you love me?"<<endl;
while(love == "yes")
{
cin >> love >> endl;
}
cout << "i love you too" << endl;
_getch();
return 0;
}



0



4815 / 2276 / 287

Регистрация: 01.03.2013

Сообщений: 5,939

Записей в блоге: 26

12.09.2014, 04:13

7

Что-то логика последнего кода меня немного смущает…



0



0x10

12.09.2014, 05:44

Не по теме:

Цитата
Сообщение от _Ivana
Посмотреть сообщение

Что-то логика последнего кода меня немного смущает…

Меня смущает логика и первого… Лично я не хотел бы в свой день рождения смотреть на невесть как написанный код.



0



sourcerer

12.09.2014, 09:47


    Как написать фразу I Love You, что б интересно было её разгадать

Не по теме:

Цитата
Сообщение от 0x10
Посмотреть сообщение

в свой день рождения смотреть

А по-моему довольно мило и необычно :)



0



Понравилась статья? Поделить с друзьями:
  • Как на ютубе написать жирным шрифтом
  • Как на этом телефоне написать смс
  • Как на экране телефона написать слова
  • Как на экране блокировки написать текст реалми
  • Как на экране блокировки написать текст vivo