python基础语法

简介:

python编程基础概念:


程序: 一组能让计算机识别和执行的指令; 

电子计算机:能够执行程序的机器;

冯诺依曼体系架构:

    CPU由运算器和控制器组成;

    运算器:完成各种算术运算,逻辑运算,数据传输等数据加工处理;

    控制器:控制程序的执行;

    存储器:记忆程序和数据,如内存;

    输入设备:将数据或程序输入计算机中,如键盘鼠标等; 

    输出设备:将数据或程序的处理结果展示给用户,如显示器打印机等;

    CPU中还有寄存器和多级缓存; 

编程基础: 

    计算机语言:人与计算机之间交互的语言;

    机器语言:机器指令的集合,机器指令是一定位数组成二进制的0和1的序列; 

    汇编语言:用一些助记符号代替机器指令,成为汇编语言;

语言分类: 

    低级语言:面向机器的语言,包括机器语言、汇编语言;

    高级语言:接近自然语言和数学语言的计算机语言;

高级语言的发展: 

    非结构化语言 —> 结构化语言 —> 面向对象语言 —> 函数式语言 

程序Program: 

    程序 = 数据结构 + 算法 

    数据是一切程序的核心;

    数据结构是数据在计算机中的类型和组织方式; 

    算法是处理数据的方式,算法有优劣之分;

基础语法:

注释:

1
2
#标注的文本  
“”“ ”“” 或 ‘’‘ ‘’’包裹的文本 

数字:

1
整数、浮点数

字符串:

1
2
3
使用 ' 或 " 引用的字符的序列;
使用  '' ' 或  "" " 可以跨行; 
字符串前面加上 r 或 R 前缀,表示该字符不做特殊的处理;

转义序列: 

1
2
\\  \t  \r  \n  \ '  \''  
前缀 r, 把里面的所有字符当普通字符对待;

缩进: 

1
2
采用缩进的方式表示层次关系; 
约定使用4个空格缩进;

续行: 

1
2
在行尾使用"\"; 
如果使用括号,认为括号内是一个整体,内部跨行不用"\";

常量:  

1
2
一旦赋值就不能改变值的标识符; 
python中无法定义常量;

变量: 

1
赋值后,可以改变值的标识符;

python的语言类型: 

1
2
3
4
5
6
python是动态强类型语言; 
动态编译语言:
不用事先声明类型,随时可赋值为其他类型; 
编程时不知道是什么类型,很难判断; 
强类型语言: 
     不同类型之间,必须先强制类型转换为同一类型;

运算符: 

1
2
算数运算符:自然除  '/'  结果是浮点数,整除  '//'  ;注:2.x中 '/'  和  '//'  都是整除; 
位运算符:&,|, ~,^,<<,>>(按位与,按位或,安位取反,按位异或,左移,右移)


练习题:


练习1: 

给定一个不超过五位的正整数,判断其有几位并打印各个位的数。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
val  =  input ( '>>>' )
val  =  int (val)
if  val > =  1000 #fold
     if  val> = 10000 :
         =  5
         print (n)
     else :
         =  4
         print (n)
else :
     if  val> = 100 :
         =  3
         print (n)
     elif  val > =  10 :
         =  2
         print (n)
     else :
         =  1
         print (n)
for  in  range (n,  0 - 1 ):
     pN  =  val  / /  ( 10  * *  (i  -  1 ))
     val  =  val  %  ( 10  * *  (i  -  1 )) 
     print (pN, end  =  ' ' )

练习2: 

求100以内所有奇数的和(2500)。 

1
2
3
4
5
sum  =  0
for  in  range ( 1 101 ):
     if  %  2  ! =  0 :
         sum  + =  i
print ( sum )

练习3: 

求1-5的阶乘之和。 

1
2
3
4
5
6
7
sum  =  0
for  in  range ( 1 6 ):
     factorial  =  1
     for  in  range ( 1 , i + 1 ):
         factorial  * =  j
     sum  + =  factorial
print ( sum )

练习4:

打印九九乘法表 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
for  in  range ( 1 10 ):
     for  in  range ( 1 , i + 1 ):
         print ( '{1} x {0} = {2:<2}' . format (i, j, i * j), end = ' '
         # print('{1} x {0} = {2}'.format(i, j, i*j), '\t', end=' ')  # '\t'制表符.
     print ()
# {2:<2}对应i*j, :<2冒号是分隔符号, <表示左对齐,2表示宽度.    
 
1  1  =  1
1  2  =  2   2  2  =  4
1  3  =  3   2  3  =  6   3  3  =  9
1  4  =  4   2  4  =  8   3  4  =  12  4  4  =  16
1  5  =  5   2  5  =  10  3  5  =  15  4  5  =  20  5  5  =  25
1  6  =  6   2  6  =  12  3  6  =  18  4  6  =  24  5  6  =  30  6  6  =  36
1  7  =  7   2  7  =  14  3  7  =  21  4  7  =  28  5  7  =  35  6  7  =  42  7  7  =  49
1  8  =  8   2  8  =  16  3  8  =  24  4  8  =  32  5  8  =  40  6  8  =  48  7  8  =  56  8  8  =  64
1  9  =  9   2  9  =  18  3  9  =  27  4  9  =  36  5  9  =  45  6  9  =  54  7  9  =  63  8  9  =  72  9  9  =  81

扩展: 

方法1:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
for  in  range ( 1 10 ):
     for  in  range ( 1 10 ):
         if  i > j:
             print ( ' '  *  13 , end  =  '')
         else :
             print ( '{0} x {1} = {2:<4}' . format (i, j, i * j), end = ' ' )
     print ()
     
1  1  =  1     1  2  =  2     1  3  =  3     1  4  =  4     1  5  =  5     1  6  =  6     1  7  =  7     1  8  =  8     1  9  =  9
              2  2  =  4     2  3  =  6     2  4  =  8     2  5  =  10    2  6  =  12    2  7  =  14    2  8  =  16    2  9  =  18
                           3  3  =  9     3  4  =  12    3  5  =  15    3  6  =  18    3  7  =  21    3  8  =  24    3  9  =  27
                                        4  4  =  16    4  5  =  20    4  6  =  24    4  7  =  28    4  8  =  32    4  9  =  36
                                                     5  5  =  25    5  6  =  30    5  7  =  35    5  8  =  40    5  9  =  45
                                                                  6  6  =  36    6  7  =  42    6  8  =  48    6  9  =  54
                                                                               7  7  =  49    7  8  =  56    7  9  =  63  
                                                                                            8  8  =  64    8  9  =  72 
                                                                                                         9  9  =  81                                                                                     8  8  =  64    8  9  =  72                                                                                                  9  9  =  81

方法2: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
for  in  range ( 1 10 ):
     print ( ' '  *  13  *  (i - 1 ), end  =  '')
     for  in  range (i,  10 ):
         print ( '{} x {} = {:<4}' . format (i, j, i * j), end = ' ' )
     print ()
     
1  1  =  1     1  2  =  2     1  3  =  3     1  4  =  4     1  5  =  5     1  6  =  6     1  7  =  7     1  8  =  8     1  9  =  9
              2  2  =  4     2  3  =  6     2  4  =  8     2  5  =  10    2  6  =  12    2  7  =  14    2  8  =  16    2  9  =  18
                           3  3  =  9     3  4  =  12    3  5  =  15    3  6  =  18    3  7  =  21    3  8  =  24    3  9  =  27
                                        4  4  =  16    4  5  =  20    4  6  =  24    4  7  =  28    4  8  =  32    4  9  =  36
                                                     5  5  =  25    5  6  =  30    5  7  =  35    5  8  =  40    5  9  =  45
                                                                  6  6  =  36    6  7  =  42    6  8  =  48    6  9  =  54
                                                                               7  7  =  49    7  8  =  56    7  9  =  63  
                                                                                            8  8  =  64    8  9  =  72 
                                                                                                         9  9  =  81                                                                                                        9  9  =  81

练习5: 

打印100以内的斐波那契数列。 

1
2
3
4
5
6
n1  =  0
n2  =  1
for  in  range ( 100 ):
     n1, n2  =  n2, n1 + n2
     if  n1 <  100 :
         print (n1)

练习6: 

求斐波那契数列第101项。 

1
2
3
4
5
6
7
8
9
n1  =  0
n2  =  1
count  =  0
while  True :
     n1, n2  =  n2, n1 + n2
     count  + =  1
     if  count  = =  101 :
         print (n1)
         break

练习7: 

打印菱形。 

方法1:

1
2
3
4
5
6
7
8
num  =  8
for  in  range ( 1 22 2 ):
     if  i <  12 :
         num  - =  1
         print ( ' '  *  num  +  '*'  *  i)
     else :
         num  + =  1
         print ( ' '  *  num  +  '*'  *  ( 22 - i))

方法2: 

1
2
3
4
5
6
for  in  range ( - 3 4 ):
     if  i <  0 :
         prespace  =  - i
     else :
         prespace  =  i
     print ( ' '  *  prespace  +  '*'  *  ( 7  -  prespace  *  2 ))

练习8: 

打印如下形状: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
for  in  range ( - 3 4 ):
     if  i <  0 :
         print ( ' '  *  ( - i)  +  '*'  *  ( 4 + i))
     elif  = =  0 :
         print ( '*'  *  7 )
     else :
         print ( ' '  *  3  +  '*'  *  ( 4 - i))
         
    *
   * *
  * * *
* * * * * * *
    * * *
    * *
    *


完!



本文转自 羽丰1995 51CTO博客,原文链接:http://blog.51cto.com/13683137989/1965841


相关文章
|
15天前
|
Java 编译器 C语言
Python速成篇(基础语法)上
Python速成篇(基础语法)上
|
1月前
|
Java 程序员 C++
【python】—— 基础语法(二)
【python】—— 基础语法(二)
|
1月前
|
存储 机器学习/深度学习 XML
python基础语法——文件与库
本文基于pycharm编译器,也可以使用Anaconda 里的编译器,将讲解一些python的一些基础语法知识,是对上篇文章的补充.
31 0
|
1月前
|
编译器 测试技术 C++
【Python 基础教程 01 全面介绍】 Python编程基础全攻略:一文掌握Python语法精髓,从C/C++ 角度学习Python的差异
【Python 基础教程 01 全面介绍】 Python编程基础全攻略:一文掌握Python语法精髓,从C/C++ 角度学习Python的差异
165 0
|
8天前
|
Python
02-python的基础语法-01python字面量/注释/数据类型/数据类型转换
02-python的基础语法-01python字面量/注释/数据类型/数据类型转换
|
15天前
|
存储 监控 Java
Python速成篇(基础语法)下(新年快乐♥)
Python速成篇(基础语法)下(新年快乐♥)
|
22天前
|
Java C语言 C++
【Python】5. 基础语法(3) -- 函数篇
【Python】5. 基础语法(3) -- 函数篇
24 1
|
22天前
|
存储 Java 程序员
【Python】6. 基础语法(4) -- 列表+元组+字典篇
【Python】6. 基础语法(4) -- 列表+元组+字典篇
41 1
|
1月前
|
存储 Python
Python基础语法
Python基础语法
|
1月前
|
数据处理 开发者 Python