我之前是写java的。所以就说下和java的区别。也是简单的介绍几个基本的语法。

一.首先说下循环for和if语句

1.for循环中,基本语法如下:

for 变量名 <variable>  in  序列 <statements> :

        语句1<statements1>

        语句2<statements2>

NB:语句1和语句2缩进的必须相同。

区别1:java的时候, for类似这种:for(int i=1;i<5;i++);在python都省略了,那怎么知道取到第几个元素,其实就是把序列(数组/列表)中的变量都取一个名字,就是上面的 变量名,然后对其进行操作。

 区别2:省略了括号,但是在 for的结尾必须有“:”

区别3:同时也省略了“{}”, 也就是大括号。但是python必须遵循缩进的原则。

上面的语句用java写就是:

for()

{

      语句1;

      语句2;

}

 

 

2. for - else

在python中有个for-else语法

其实就是相当于是执行完for循环后,必须还要执行一个else后面的内容;可以用来作为for循环结束的一个标志

for 变量名 in 序列:

        语句1

        语句2

else:

        语句3

NB:else和for要对齐

 

如果for-else中有break语句怎么办

以下 for 实例中使用了 break 语句,break 语句用于跳出当前循环体,那么else后的语句不会执行,如果执行到了第7行的break, 那么接着执行第11行。

NB:break,continue的含义和用法与java相同

1#!/usr/bin/python3
 2  
 3 sites = ["Baidu", "Google","Runoob","Taobao"]
 4 for site in sites:
 5     if site == "Runoob":
 6         print("hello Python!")
 7         break
 8     print("循环数据 " + site)
 9 else:
10     print("没有循环数据!")
11 print("完成循环!")

执行脚本后,在循环到 "Runoob"时会跳出循环体:

1 循环数据 Baidu
2 循环数据 Google
3 hello Python!
4 完成循环!

3.if-else

基本语法:

if condition_1:

      statement_block_1

elif condition_2:

     statement_block_2

else:

      statement_block_3

NB:注意是elif,不是都是else,这也是和java比较大的区别

同时,如果最后一个有con,就是elif,没有的话是else,和java 相同

例:

age = int(input("请输入你家狗狗的年龄: "))
print("")
if age < 0:
    print("你是在逗我吧!")
elif age == 1:
    print("相当于 14 岁的人。")
elif age == 2:
    print("相当于 22 岁的人。")
elif age > 2:
    human = 22 + (age -2)*5
    print("对应人类年龄: ", human)

4.while 循环使用 else 语句

在 while … else 在条件语句为 false 时执行 else 的语句块:

1 #!/usr/bin/python3
2  
3 count = 0
4 while count < 5:
5    print (count, " 小于 5")
6    count = count + 1
7 else:
8    print (count, " 大于或等于 5")

执行以上脚本,输出结果如下:

1 0  小于 5
2 1  小于 5
3 2  小于 5
4 3  小于 5
5 4  小于 5
6 5  大于或等于 5

 


二.数组的创建

下面我说下二维数组是如何创建的,先是第一种方式num_list = [ [0]*列 ]*行

如果采用这种方式创建,创建是可以,但是在改变num_list[0][0]的时候num_list[1][0]也会发生改变,所以不 用

num_list = [ [0]*5 ]*2
print(num_list)
输出:[[0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]

当我们改变num_list[0][0]的值的时候, 输出显示结果,发现numlist[1][0]也改变了

num_list[0][0] = 1
print(num_list)
输出:[[1, 0, 0, 0, 0], [1, 0, 0, 0, 0]]

当改变num_list[0][0]的时候,

上面创建方式等价于

temp_list = [0]*5
num_list = [temp_list,temp_list]

因此 num_list[0][0] = 1  相当于 temp_list[0] = 1,所以num_list[1][0]也跟着变了

一般采用下面的方式:

m = [[0] * 行 for _ in range(列)]

#3行10列的二维数组的创建:

m = [[0] * 3 for _ in range(10)]

#或者 m = [[0] * 3] * 10

#我们来检查一下数组创建的对不对

for i in range(10): 

   for j in range(3): 

      try: if (m[i][j] != 0):

             print(i, j) 

      except: 

             print(i, j, "error") 

#没有输出error有关的东西,正确!

 




三.运算符问题

3.1 布尔运算符

在java中,在if条件句中,我们常用if( (i == 0) && (i ==1) || (i >3))这种,但是我在python中也这么大却不对,后来发现,python中用了and , or  , not 来表示或与非。

3.2 比较运算符

python中for语句执行边界 python语法for_java

多条件比较:

可以先给变量a赋值,然后做多条件比较。

1 a = 3
2 print(1 < a < 5)

在java中,是不可以使用连着比较这种情况的。但是python可以。

3.3. 成员运算符:

成员运算符的关键词是“in”,判断一个元素是否在某一个列表中。运行如下程序后,可得到反馈结果。

1 a = 1 
2 b = 'beautiful' 
3 album = [1,'beautifully',False,7] 
4 # 创建列表,命名该列表为album 
5 print(a in album) 
6 print(b in album

当album=[]时,表示该列表为空。

如果想在album中新增内容,可以用append方法来实现。新增后,会在列表末尾显示新增的内容。

1 album = [1,'beautifully',False,7] 
2 album.append('Wow') 
3 # 用append()方法在album中新增内容 
4 print(album)

3. 身份运算符:

身份运算符是用来比较两个对象是否是同一个对象,而之前比较运算符中的“==” 则是用来比较两个对象的值是否相等。

身份运算符主要用“is、is not”来判断。

1 a = 'duwangdan' 
2 b = 'duwangdan' 
3 print(a is b) 
4 print(a is not b)