sâmbătă, 13 ianuarie 2018

Programare - Secvențe și Exemple


Installing Python 3 on Linux


This document describes how to install Python 3.6 on Ubuntu Linux machines.
To see which version of Python 3 you have installed, open a command prompt and run
$ python3 --version
If you are using Ubuntu 16.10 or newer, then you can easily install Python 3.6 with the following commands:
$ sudo apt-get update
$ sudo apt-get install python3.6
If you’re using another version of Ubuntu (e.g. the latest LTS release), we recommend using the deadsnakes PPA to install Python 3.6:
$ sudo apt-get install software-properties-common
$ sudo add-apt-repository ppa:deadsnakes/ppa
$ sudo apt-get update
$ sudo apt-get install python3.6
If you are using other Linux distribution, chances are you already have Python 3 pre-installed as well. If not, use your distribution’s package manager. For example on Fedora, you would use dnf:
$ sudo dnf install python3
Note that if the version of the python3 package is not recent enough for you, there may be ways of installing more recent versions as well, depending on you distribution. For example installing the python36 package on Fedora 25 to get Python 3.6. If you are a Fedora user, you might want to read about multiple Python versions available in Fedora.

Working with Python 3

At this point, you may have system Python 2.7 available as well.
$ python
This will launch the Python 2 interpreter.
$ python3
This will launch the Python 3 interpreter.
Python 2.7.9 and later (on the python2 series), and Python 3.4 and later include pip by default.
To see if pip is installed, open a command prompt and run
$ command -v pip
To install pip, follow the official pip installation guide - this will automatically install the latest version of setuptools.
Note that on some Linux distributions including Ubuntu and Fedora the pip command is meant for Python 2, while the pip3 command is meant for Python 3.
$ command -v pip3


How to Download and Install Python 3.6 on Windows 10 

Cum se instalează Python pe Windows

Python nu vine preambalat cu Windows, dar asta nu înseamnă că utilizatorii Windows nu vor găsi limbajul de programare flexibil util. Nu este chiar atât de simplu ca instalarea celei mai noi versiuni, deci asigurați-vă că obțineți instrumentele potrivite pentru sarcina la îndemână.
Primul lansat în 1991, Python este un popular limbaj de programare la nivel înalt utilizat pentru programarea generală. Datorită unei filozofii de design care accentuează lizibilitatea, aceasta a fost mult timp un favorit al programatorilor de hobby și al programatorilor grave. Nu numai că este un limbaj ușor (comparativ vorbind, că este) de a ridica, dar veți găsi mii de proiecte online care necesită ai instalat Python pentru a utiliza programul.
Versiunea pe care o doriți depinde de scopul final. Să spunem, de exemplu, că ați citit articolul despre extinderea lumii Minecraft cu MCDungeon  și suntețiîncântați să adăugați lucruri reci în lumile voastre. Proiectul este codificat în Python și necesită Python 2.7 - nu puteți rula proiectul MCDungeon cu Python 3.6. De fapt, dacă explorați proiecte de hobby ca MCDungeon, veți găsi că aproape toți aceștia utilizează 2.7. Dacă obiectivul dvs. este să obțineți un proiect care se termină într-o extensie ".py", atunci există o   sansă foarte bună, veți avea nevoie de 2.7 pentru aceasta.


NCURSES Programming HOWTO 

A Word about Windows

 Before we plunge into the myriad ncurses functions, let me clear few things about windows. Windows are explained in detail in following sections . A Window is an imaginary screen defined by curses system. A window does not mean a bordered window which you usually see on Win9X platforms. When curses is initialized, it creates a default window named stdscr which represents your 80x25 (or the size of window in which you are running) screen. If you are doing simple tasks like printing few strings, reading input etc., you can safely use this single window for all of your purposes. You can also create windows and call functions which explicitly work on the specified window.  For example, if you call

    printw("Hi There !!!");
    refresh();
It prints the string on stdscr at the present cursor position. Similarly the call to refresh(), works on stdscr only.
Say you have created windows then you have to call a function with a 'w' added to the usual function.

    wprintw(win, "Hi There !!!");
    wrefresh(win);
As you will see in the rest of the document, naming of functions follow the same convention. For each function there usually are three more functions.

    printw(string);        /* Print on stdscr at present cursor position */
    mvprintw(y, x, string);/* Move to (y, x) then print string     */
    wprintw(win, string);  /* Print on window win at present cursor position */
                           /* in the window */
    mvwprintw(win, y, x, string);   /* Move to (y, x) relative to window */
                                    /* co-ordinates and then print         */
Usually the w-less functions are macros which expand to corresponding w-function with stdscr as the window parameter.


Introduction
In the olden days of teletype terminals, terminals were away from computers and were connected to them through serial cables. The terminals could be configured by sending a series of bytes. All the capabilities (such as moving the cursor to a new location, erasing part of the screen, scrolling the screen, changing modes etc.) of terminals could be accessed through these series of bytes. These control seeuqnces are usually called escape sequences, because they start with an escape(0x1B) character. Even today, with proper emulation, we can send escape sequences to the emulator and achieve the same effect on a terminal window.

Suppose you wanted to print a line in color. Try typing this on your console.
echo "^[[0;31;40mIn Color"

The first character is an escape character, which looks like two characters ^ and [. To be able to print it, you have to press CTRL+V and then the ESC key. All the others are normal printable characters. You should be able to see the string "In Color" in red. It stays that way and to revert back to the original mode type this.
echo "^[[0;37;40m"

Now, what do these magic characters mean? Difficult to comprehend? They might even be different for different terminals. So the designers of UNIX invented a mechanism named termcap. It is a file that lists all the capabilities of a particular terminal, along with the escape sequences needed to achieve a particular effect. In the later years, this was replaced by terminfo. Without delving too much into details, this mechanism allows application programs to query the terminfo database and obtain the control characters to be sent to a terminal or terminal emulator.

Compiling With the NCURSES Library

To use ncurses library functions, you have to include ncurses.h in your programs. To link the program with ncurses the flag -lncurses should be added.

    #include <ncurses.h>
    .
    .
    .

    compile and link: gcc <program file> -lncurses
Example 1. The Hello World !!! Program

#include <ncurses.h>

int main()
{ 
 initscr();   /* Start curses mode     */
 printw("Hello World !!!"); /* Print Hello World    */
 refresh();   /* Print it on to the real screen */
 getch();   /* Wait for user input */
 endwin();   /* End curses mode    */

 return 0;
}

An Example
Let's write a program which will clarify the usage of these functions.
Example 2. Initialization Function Usage example


#include <ncurses.h>

int main()
{ int ch;

 initscr();   /* Start curses mode   */
 raw();    /* Line buffering disabled */
 keypad(stdscr, TRUE);  /* We get F1, F2 etc..  */
 noecho();   /* Don't echo() while we do getch */

     printw("Type any character to see it in bold\n");
 ch = getch();   /* If raw() hadn't been called
      * we have to press enter before it
      * gets to the program   */
 if(ch == KEY_F(1))  /* Without keypad enabled this will */
  printw("F1 Key pressed");/*  not get to us either */
     /* Without noecho() some ugly escape
      * charachters might have been printed
      * on screen   */
 else
 { printw("The pressed key is ");
  attron(A_BOLD);
  printw("%c", ch);
  attroff(A_BOLD);
 }
 refresh();   /* Print it on to the real screen */
     getch();   /* Wait for user input */
 endwin();   /* End curses mode    */

 return 0;
}
This program is self-explanatory. But I used functions which aren't explained yet. The function getch() is used to get a character from user. It is equivalent to normal getchar() except that we can disable the line buffering to avoid <enter> after input. Look for more about getch()and reading keys in the key management section . The functions attron and attroff are used to switch some attributes on and off respectively. In the example I used them to print the character in bold. These functions are explained in detail later.

NCURSES Programming HOWTO


Table of Contents
1. Introduction
1.1. What is NCURSES?
1.2. What we can do with NCURSES
1.3. Where to get it
1.4. Purpose/Scope of the document
1.5. About the Programs
1.6. Other Formats of the document
1.7. Credits
1.8. Wish List
1.9. Copyright
2. Hello World !!!
2.1. Compiling With the NCURSES Library
2.2. Dissection
3. The Gory Details
4. Initialization
4.1. Initialization functions
4.2. raw() and cbreak()
4.3. echo() and noecho()
4.4. keypad()
4.5. halfdelay()
4.6. Miscellaneous Initialization functions
4.7. An Example
5. A Word about Windows
6. Output functions
6.1. addch() class of functions
6.2. mvaddch(), waddch() and mvwaddch()
6.3. printw() class of functions
6.4. addstr() class of functions
6.5. A word of caution
7. Input functions
7.1. getch() class of functions
7.2. scanw() class of functions
7.3. getstr() class of functions
7.4. Some examples
8. Attributes
8.1. The details
8.2. attron() vs attrset()
8.3. attr_get()
8.4. attr_ functions
8.5. wattr functions
8.6. chgat() functions
9. Windows
9.1. The basics
9.2. Let there be a Window !!!
9.3. Explanation
9.4. The other stuff in the example
9.5. Other Border functions
10. Colors
10.1. The basics
10.2. Changing Color Definitions
10.3. Color Content
11. Interfacing with the key board
11.1. The Basics
11.2. A Simple Key Usage example
12. Interfacing with the mouse
12.1. The Basics
12.2. Getting the events
12.3. Putting it all Together
12.4. Miscellaneous Functions
13. Screen Manipulation
13.1. getyx() functions
13.2. Screen Dumping
13.3. Window Dumping
14. Miscellaneous features
14.1. curs_set()
14.2. Temporarily Leaving Curses mode
14.3. ACS_ variables
15. Other libraries
16. Panel Library
16.1. The Basics
16.2. Compiling With the Panels Library
16.3. Panel Window Browsing
16.4. Using User Pointers
16.5. Moving and Resizing Panels
16.6. Hiding and Showing Panels
16.7. panel_above() and panel_below() Functions
17. Menus Library
17.1. The Basics
17.2. Compiling With the Menu Library
17.3. Menu Driver: The work horse of the menu system
17.4. Menu Windows
17.5. Scrolling Menus
17.6. Multi Columnar Menus
17.7. Multi Valued Menus
17.8. Menu Options
17.9. The useful User Pointer
18. Forms Library
18.1. The Basics
18.2. Compiling With the Forms Library
18.3. Playing with Fields
18.4. Form Windows
18.5. Field Validation
18.6. Form Driver: The work horse of the forms system
19. Tools and Widget Libraries
19.1. CDK (Curses Development Kit)
19.2. The dialog
19.3. Perl Curses Modules CURSES::FORM and CURSES::WIDGETS
20. Just For Fun !!!
20.1. The Game of Life
20.2. Magic Square
20.3. Towers of Hanoi
20.4. Queens Puzzle
20.5. Shuffle
20.6. Typing Tutor
21. References



Un alt mod în care puteți folosi Python în Linux este prin IDLE (mediul de dezvoltare integrat Python), o interfață grafică de utilizator pentru scrierea codului Python. Înainte de instalare, este o idee bună să efectuați o căutare pentru a afla care sunt versiunile disponibile pentru distribuția dvs.:
# aptitude search idle     [Debian and derivatives]
# yum search idle          [CentOS and Fedora]
# dnf search idle          [Fedora 23+ version]
$ sudo aptitude install idle-python3.2     # Folosesc Linux Mint 13
După instalare, veți vedea următorul ecran după lansarea IDLE . În timp ce seamănă cu shell-ul Python, puteți face mai mult cu IDLE decât cu shell-ul.

python-parrot 1.0.0

Parrot este un server HTTP simplu care răspunde la cererile cu un nume de fișier specificat
Ultima versiune: 1.0.2
parrot este un server HTTP simplu care răspunde la orice solicitare GET validă cu fișierul specificat pe linia de comandă.
Este utilă în timpul testelor (de exemplu, pentru a șterge o aplicație de server) sau pentru a efectua testarea clientului. Atât fișierele text cât și fișierele binare sunt difuzate corect.
Singura ei dependență este biblioteca excelentă de magie python pentru ghicitul de tip mime. Funcționează pe Python 3.
$ pip install python-parrot

Usage

$ parrot port filename
The following arguments are required:
  • port: Port to listen on
  • filename: Filename of the data to send in response to all requests










MathJax / mhchem Manual

Mhchem este un instrument de scriere a ecuațiilor chimice frumoase cu ușurință.
Acesta este manualul pentru sintaxa de intrare a lui mhchem.
Acesta acoperă versiunea 3.2.x a lui MathJax / mhchem.
mhchem este o extensie terță parte pentru MathJax . Pentru informații despre cum să încărcați extensia și să faceți \cecomanda disponibilă, consultați documentele oficiale MathJax . Pe scurt, utilizați această config:



MathJax.Ajax.config.path["mhchem"] =
  "https://cdnjs.cloudflare.com/ajax/libs/mathjax-mhchem/3.2.0";
MathJax.Hub.Config({
  TeX: {
    extensions: ["[mhchem]/mhchem.js"]
  }
});

ecuațiile chimice (ce)
C O 2+C⟶2C OCOX2+C⟶2CO
$\ce{CO2 + C -> 2 CO}$

H g 2 +-→I -H g I 2-→I -[ H g I - amI 4] 2 -HgX2+→euX-HgeuX2→euX-[HgXeueueuX4]X2-
$\ce{Hg^2+ ->[I-] HgI2 ->[I-] [Hg^{II}I4]^2-}$





Niciun comentariu:

Trimiteți un comentariu