Heim  >  Artikel  >  Eine kurze Analyse der Syntaxunterschiede durch Vergleich von PHP- und Python-Codes

Eine kurze Analyse der Syntaxunterschiede durch Vergleich von PHP- und Python-Codes

藏色散人
藏色散人nach vorne
2019-07-12 13:32:003569Durchsuche

Eine kurze Analyse der Syntaxunterschiede durch Vergleich von PHP- und Python-Codes

1. Hintergrund

Künstliche Intelligenz erfreut sich in den letzten Jahren großer Beliebtheit und ich wollte schon immer etwas lernen Da ich mich mit der PHP-Entwicklung beschäftigt habe, bin ich immer mit der Peinlichkeit konfrontiert, dass ich in kritischen Momenten auf ein schwaches Fundament stoße Problem, ich stecke leicht fest, also bereiten Sie sich darauf vor, von Anfang an Python zu lernen.

Der Autor ist der Meinung, dass es viele Leute geben sollte, die auch mit PHP oder der Python-Sprache vertraut sind, aber nicht allzu vertraut damit sind die andere Sprache Sie haben die Idee, eine andere Sprache zu lernen. Ich hoffe, dass dieser Artikel für alle hilfreich sein kann.

2. Wissenspunkte

Ich habe kürzlich eine kleine Aufgabe abgeschlossen: Durch Python-Code implementiert, sodass Benutzer Benutzernamen und Passwort eingeben und eine Begrüßung anzeigen können Meldung nach erfolgreicher Authentifizierung, beenden Sie das Programm nach drei falschen Eingaben.

In diesem Artikel werden wir die grammatikalischen Unterschiede zwischen PHP und Python anhand dieser kleinen Aufgabe zusammenfassen und analysieren, die hauptsächlich die folgenden Wissenspunkte umfasst:

1. Gesamtcodestil

2. Namenskonvention für Variablen

4. Datentyp

6 🎜>

7. If-Anweisung verwenden

8. while-Schleife

3. Python-Syntax

Leerzeichen müssen in Python strikt beachtet werden Einrückung, andernfalls wird ein Fehler gemeldet. Nach jeder Codezeile ist () nicht für die Bedingungen der Struktur erforderlich, und {} ist im Ausführungskörper nicht erforderlich >

3.1 Codebeispiel

# -*- coding: utf-8 -*-
n = 0
while n < 3:
    #累计次数,用于循环条件
    n = n + 1
    #定义账号和密码
    uname = &#39;tangqingsong&#39;
    pwd = &#39;123123&#39;
    #接收参数
    username = input(&#39;请输入用户名:&#39;)
    password = input(&#39;请输入密码:&#39;)
    #判断用户输入的账号和密码是否正确,正确将提示成功,并且退出循环体
    if uname == username and pwd == password:
        print (&#39;恭喜你,登陆成功~&#39;)
        break
    #三次机会用完的时候,提示错误次数,并告知即将退出
    elif n == 3:
        print(&#39;已错误&#39;, n, &#39;次,即将退出...&#39;)
    #如果在三次以内,提示还剩下几次机会
    else:
        print(&#39;抱歉,账号或密码不正确,你还有&#39;, 3 - n, &#39;次机会&#39;)

3.2 Grundlegende Syntax

Lassen Sie uns über einige Spezifikationen im Python-Code unter den Aspekten der grundlegenden Syntax, Datentypen, IF-Steuerung und while-Schleifen

3.2.1 Grundlegende Syntax

Variablen: Variablen bestehen in Python aus Zahlen, Buchstaben und Unterstrichen. Sie können nicht mit Zahlen beginnen und auch nicht Seien Sie Schlüsselwörter in Python, z. B. while und if, elif, else, break, continue usw. Es wird außerdem empfohlen, zwei Standardbenennungsformate zu verwenden: Benennung in Groß- und Kleinschreibung und unterstrichene Benennung.

Konstanten: Gibt es nicht großer Unterschied in der Art und Weise, wie Konstanten und Variablen in Python definiert werden. Die Konvention besteht darin, alle Definitionen in Großbuchstaben zu verwenden.

Kommentare: In Python können Kommentare verwendet werden, um eine Codezeile durch # oder auszukommentieren Sie können verwendet werden, um einen bestimmten Teil des Codes über „“ auszukommentieren, z. B. „Kommentarinhalt“.

3.2.2 Datentyp

In Python können Sie den Datentyp einer Variablen über den Typ (Variablenname) ermitteln: Boolean, Integer-Typ, Gleitkommatyp, String usw.; im Boolean-Typ true/true/1 false /False/0, Zahlen ungleich 0 sind alle True;

kann in Zeichenfolgen durch einfache Anführungszeichen verwendet werden, und doppelte Anführungszeichen können auf zwei Arten definiert werden, z. B.

a = &#39;字符串&#39;
b = "字符串"
oder
a = &#39;&#39;&#39;可以换行
    这里有换行
  这里也有换行
的字符串
&#39;&#39;&#39;
#或者三个双引号
b = """可以换行
    这里有换行
  这里也有换行
的字符串"""

Um eine große Zeichenfolge zu definieren, können Sie Zeichenfolge + Zeichenfolge verwenden, oder Sie können Zeichenfolge * Zahl verwenden und die Zeichenfolge beispielsweise mit „abc“ * 2 wiederholen abcabc

3.2.3 Datentyp

Addition, Subtraktion, Multiplikation und Division in Ganzzahl- und Gleitkomma-Datentypen sind nichts Besonderes. Wir verwenden auch die vier Symbole +, -, *, / und % verwenden, um den Rest zu erhalten. In Python gibt es mehrere spezielle Operatoren, z. B. Sie können // verwenden, um eine Ganzzahldivision durchzuführen, und das Ergebnis enthält keine Dezimalstellen, wie im Folgenden gezeigt Code:

a = 10 // 3 
# 得到的结果是 3

Sie können auch ** verwenden, um die Leistung zu erhalten, wie im folgenden Code gezeigt:

b = 2 ** 2 
# 得到的结果是 8
3.2.4 Eingabe und Ausgabe

Eingabe und Ausgabe: In Python können Sie das Schlüsselwort print verwenden, um Variablen auszudrucken, und Sie können vom Benutzer im Terminal übergebene Parameter über die Eingabe empfangen, z. B.

Alle von

inp = input(&#39;用户输入的时候看到的提示 :&#39;)
empfangenen Inhalte

über die Eingabe ist vom Typ String. Wenn es für Berechnungen verwendet werden muss, müssen die empfangenen Variablen typkonvertiert werden; >
a = int(变量名)

;

3.3 IF-Steuerung

Bei Verwendung der if-Anweisung in Python muss die Bedingung nicht () enthalten, der Ausführungskörper ist nicht erforderlich in {} eingefügt werden, aber der Ausführungskörper muss sich strikt an die Einrückung halten, wie im folgenden Code gezeigt

f = float(变量名)

3.4 while-Schleife

in Python verwendet Das while Die Methode ähnelt PHP, wie im Pseudocode unten gezeigt:

# if a >3 and b==2:
    缩进 满足条件1之后要做的事情
  elif a>3 and b==3:
    缩进 不满足条件1但满足条件2之后要做的事情
  else:
    缩进 上面的条件都不满足要做的事情
Sie können das Schlüsselwort break verwenden, um die Schleife zu verlassen, oder Sie können continue verwenden, um einen bestimmten Schritt im Schleifenprozess zu überspringen, wie in der Abbildung gezeigt folgender Code

while a == b:
    循环执行的代码

4. PHP-Syntax

In PHP ist es nicht erforderlich, sich strikt an die Leerzeicheneinrückung zu halten, aber entsprechend Python müssen Sie normalerweise Folgendes verwenden: Am Ende jeder Codezeile muss in den Strukturbedingungen auch () verwendet werden, und {} wird auch im Ausführungskörper benötigt

4.1 Codebeispiel

i = 1
while i < 10:   
    i += 1
    # 非双数时跳过输出
    if i%2 > 0:     
        continue
    # 输出双数2、4、6、8
    print i         
    # 当条件为8时候退出循环
    if i == 8:
        break
;

4.2 Grundlegende Syntax

Lassen Sie uns über einige Spezifikationen im PHP-Code unter den Aspekten der grundlegenden Syntax, Datentypen, IF-Steuerung und While-Schleifen sprechen

4.2.1 Grundlegende Syntax

变量: 在PHP中变量以数字 字母 下划线组成,必须以$符号开头,且第一个字符不能以数字开头,在PHP中因为变量都是以$开头,所以基本上没有关键字的说法,但是写代码的时候尽量不要覆盖系统变量即可,同样推荐使用驼峰命名和下划线命名两种规范命名格式

常量: 在PHP中常量同样约定俗成的使用全大写定义而已,在定义的方式有专门的定义格式,比如定义DAXIA的值为tangqingsong时候,代码如下所示

const DAXIA = &#39;tangqingsong&#39;;

注释: 在PHP中,注释可以通过#来注释某行代码,也可以使用//定义行代码,也可以通过/****/注释某段代码,如下代码所示

#这是行注释
//这是行注释,一般习惯是使用此种方式
/**
 *  块注释,一般在自定义函数和类方法的时候使用
 */

4.2.2 数据类型

在PHP中,可以通过var_dump(变量名)同时打印变量类型和值,经常使用到的数据类型有:布尔、整型、浮点型、字符串等;同样在布尔型中 真/True/1 假/False/0,非0的数字都是True;

在字符串中可以通过单引号和双引号两种方式定义,单引号中不能放变量,但是双引号是可以的,如下代码所示

$n = 123;
a = &#39;字符串&#39;;
b = "字符串{$n}";

当大家定义块文本内容的时候,也可以使用定界符方式,如下代码所示

$a = <<<EF
这里是大文本内容,可以写任意文本,EF是自定义的,大家也可以把EF写成DAXIA,但是必须前后对应,后面的必须定格,后面一个“EF”不能用空格之类的字符;
EF;

字符串可以使用符号 . 进行拼接,如下代码所示:

$name = &#39;daxia&#39; . &#39;tangqingsong&#39;;

4.2.3 数据类型

在PHP中整型和浮点数据类型中加减乘除没有什么太特别,同样是使用+、-、*、/这四个符号,使用%可以的出余数;

4.2.4 输入输出

输入输出:在PHP中可以使用print_r关键字对变量进行打印输出,在接收标准输入方面稍微麻烦,需要先通过fwrite接收用户在终端中传递的参数,然后再通过fgets函数将变量值取出来,还需要通过trim将后面的空格过滤,例如

    fwrite(STDOUT, &#39;请输入用户名:&#39;);   
    $username = trim(fgets(STDIN));

通过上面代码方式接收的所有内容都是字符串类型,但是PHP是弱类型语言,并不强大变量的数据类型,所以大部分情况无需进行类型转换,如果需要用到类型转换方法和Python大体类型,如下代码所示

a = intval(变量名)

可以将变量转换成整型,也可以通过

f = floatval(变量名)

转换成浮点型;

4.3 IF控制

if条件:在PHP中if语句的使用方法如下代码所示

<?php
if (a >3 and b==2){
    满足条件1之后要做的事情
} elseif (a>3 and b==3){
    不满足条件1但满足条件2之后要做的事情
} else {
    上面的条件都不满足要做的事情
}

4.4 while循环

while循环:在PHP中while的条件必须使用()包括,执行体在也必须使用{}包括,执行体不要求严格的缩进,但是为了美观,一般都会缩进,如下为伪代码所示

<?php
while ($a == $b){
    //循环执行的代码
}

可以使用关键词break退出循环,也可以使用continue跳过循环过程中的某一步,如下代码所示

<?php
$i = 1;
while ($i < 10) {
    $i += 1;
    //非双数时跳过输出
    if ($i % 2 > 0) {
        continue;
    }
    
    //输出双数2、4、6、8
    print_r($i);
    
    //当条件为8时候退出循环
    if ($i == 8) {
        break;
    }
}
Stellungnahme:
Dieser Artikel ist reproduziert unter:segmentfault.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen