Python基础语法及变量

Python基础语法及变量

  • 基础语法

  • 变量类型

  • 格式化输出之百分号%

1.基础语法

第一个Python程序

交互式编程:

  交互式编程不需要创建脚本文件,是通过 Python 解释器的交互模式进来编写代码。

  linux上你只需要在命令行中输入 Python 命令即可启动交互式编程,提示窗口如下:

[root@bogon ~]# python
Python 2.7.5 (default, Jun 17 2014, 18:11:42) 
[GCC 4.8.2 20140120 (Red Hat 4.8.2-16)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 

  Window 上安装完python后可在cmd命令窗口运行,提示窗口如下:

C:\Users\Administrator>python
Python 2.7.14 (v2.7.14:84471935ed, Sep 16 2017, 20:19:30) [MSC v.1500 32 bit (In
tel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>

  在 python 提示符中输入以下文本信息,然后按 Enter 键查看运行效果:

>>> print "Hello,Python"
Hello,Python

脚本式编程:

  通过脚本参数调用解释器开始执行脚本,直到脚本执行完毕。当脚本执行完成后,解释器不再有效。

复制代码
[root@bogon tmp]# cat python.py
#!/usr/bin/python
# -*- coding:UTF-8 -*-
print "Hello,Python!"
[root@bogon tmp]# python python.py 
Hello,Python!
[root@bogon tmp]# chmod +x python.py 
[root@bogon tmp]# ./python.py 
Hello,Python!
复制代码

Python标识符

  在 Python 里,标识符由字母、数字、下划线组成。

  在 Python 中,所有标识符可以包括英文、数字以及下划线(_),但不能以数字开头。

  Python 中的标识符是区分大小写的。

  以下划线开头的标识符是有特殊意义的。以单下划线开头 _foo 的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用 from xxx import * 而导入;

  以双下划线开头的 __foo 代表类的私有成员;以双下划线开头和结尾的 __foo__ 代表 Python 里特殊方法专用的标识,如 __init__() 代表类的构造函数。

  Python 可以同一行显示多条语句,方法是用分号 ; 分开,如:

>>> print "123";print "456"
123
456

Python保留字符

  下面的列表显示了在Python中的保留字。这些保留字不能用作常数或变数,或任何其他标识符名称。

所有 Python 的关键字只包含小写字母。

and exec not
assert finally or
break for pass
class from print
continue global raise
def if return
del import try
elif in while
else is with
except lambda yield

 

 

 

 

 

 

 

 

 

行和缩进

  Python 与其他语言最大的区别就是,Python 的代码块不使用大括号 {} 来控制类,函数以及其他逻辑判断。python 最具特色的就是用缩进来写模块。缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。

多行语句

  Python语句中一般以新行作为语句的结束符。但是我们可以使用斜杠( \)将一行的语句分为多行显示,如下所示:

print("zjkzjk\
123123\
456456")
--------输出结果-----------
zjkzjk123123456456

  语句中包含 [], {} 或 () 括号就不需要使用多行连接符。如下实例:

print([1,2,3,
4,5,6])
---------输出结果----------
[1, 2, 3, 4, 5, 6]

Python引号

  Python 可以使用引号( ' )、双引号( " )、三引号( ''' 或 """ ) 来表示字符串,引号的开始与结束必须的相同类型的。其中三引号可以由多行组成,编写多行文本的快捷语法,常用于文档字符串,在文件的特定地点,被当做注释。

word = 'word'
sentence = "这是一个句子。"
paragraph = """这是一个段落。
包含了多个语句"""

Python注释

python中单行注释采用 # 开头:

#这是一个python脚本
print("zjk")
---------输出结果-------------
zjk

注释可以在语句或表达式行末:

print("zjk")   #这是一个注释
---------输出结果------------
zjk

python 中多行注释使用三个单引号(''')或三个双引号("""):

复制代码
"""
这是多行注释,使用的是双引号;
这是多行注释,使用的是双引号;
这是多行注释,使用的是双引号;
"""

'''
这是多行注释,使用的是单引号;
这是多行注释,使用的是单引号;
这是多行注释,使用的是单引号;
'''
print("zjk")
------------------输出结果-----------
zjk
复制代码

Python空行

  函数之间或类的方法之间用空行分隔,表示一段新的代码的开始。类和函数入口之间也用一行空行分隔,以突出函数入口的开始。

  空行与代码缩进不同,空行并不是Python语法的一部分。书写时不插入空行,Python解释器运行也不会出错。但是空行的作用在于分隔两段不同功能或含义的代码,便于日后代码的维护或重构。

  记住:空行也是程序代码的一部分。

同一行显示多条语句

  Python可以在同一行中使用多条语句,语句之间使用分号(;)分割,以下是一个简单的实例:

print("Hello");print("World")
-------------输出结果--------------
Hello 
World

2.变量类型

变量定义  

  变量存储在内存中的值。这就意味着在创建变量时会在内存中开辟一个空间。基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。因此,变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符。

  通过字面的意思理解为变化的量。具体解释为:保存状态(程序的运行本质是一系列状态的变化,变量的目的就是用来保存状态,变量的值得变化就钩子程序运行的不同结果)

变量名命名规则

  1. 变量名称由字母、数字、下划线组成;
  2. 变量名称不能是纯数字或者数字开头的;
  3. 变量名称不能是python的关键字;
  4. 变量名称区分大小写;
  5. 变量名称不能用中文;
  6. 变量名称不能太长;
  7. 变量名称要有意义;
  8. 变量名称最好使用驼峰或下划线格式;

变量赋值

  Python 中的变量赋值不需要类型声明。每个变量在内存中创建,都包括变量的标识,名称和数据这些信息。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。等号(=)用来给变量赋值。等号(=)运算符左边是一个变量名,等号(=)运算符右边是存储在变量中的值。

多个变量赋值

  python可以同时为多个变量赋值,例如:

a = b =c = 1

  以上实例,创建一个整型对象,值为1,三个变量被分配到相同的内存空间上。

  也可以为多个对象指定多个变量。例如:

a, b, c = 1, 2, "zjk"

  以上实例,两个整型对象1和2的分配给变量 a 和 b,字符串对象 "zjk" 分配给变量 c。

 3.格式化输出

  在许多编程语言中都包含有格式化字符串的功能,比如C和Fortran语言中的格式化输入输出。python中内置有对字符串进行格式化的操作%

  模板

  格式化字符串时,Python使用一个字符串作为模板。模板中有格式符,这些格式符为真实值预留位置,并说明真实数值应该呈现的格式。Python用一个tuple将多个值传递给模板,每个值对应一个格式符。

  例如:

print("My name is %s,I'm %d year old" % ("张鋆康",23))

-----------------输出结果-----------------------------

My name is 张鋆康,I'm 23 year old

  说明:

  "My name is %s,I'm %d year old"为模板,%s为第一个格式符,表示一个字符串。%d为第二个格式符,表示一个整数。("张鋆康",23)的两个元素“张鋆康”和23为替换%s和%d的真实值。

  在模板和tuple之间,有一个%号分隔,它代表了格式化操作。

  整个"My name is %s,I'm %d year old" % ("张鋆康",23)实际上构成一个字符串表达式。我们可以像一个正常的字符串那样,将它赋值给某个变量。比如:

复制代码
a = "My name is %s,I'm %d year old" % ("张鋆康",23)
print(a)

----------------输出结果---------------------------

My name is 张鋆康,I'm 23 year old
复制代码

  还可以用字典来传递真实值。如下:

 print("My name is %(name)s,I'm %(age)d year old" % ({"name":"张鋆康","age":23}))

 ---------------结果 如下-----------------------------

 My name is 张鋆康,I'm 23 year old

  可以看到,我们对两个格式符进行了命名。命名使用()括起来。每个命名对应词典的一个key。

  格式符

  格式符为真实值预留位置,并控制显示的格式。格式符可以包含有一个类型码,用以控制显示的类型,如下:

  %s    字符串 (采用str()的显示)

  %r    字符串 (采用repr()的显示)

  %c    单个字符

  %b    二进制整数

  %d    十进制整数

  %i    十进制整数

  %o    八进制整数

  %x    十六进制整数

  %e    指数 (基底写为e)

  %E    指数 (基底写为E)

  %f    浮点数

  %F    浮点数,与上相同

  %g    指数(e)或浮点数 (根据显示长度)

  %G    指数(E)或浮点数 (根据显示长度)

  %%    字符"%"

  

  可以用如下的方式,对格式进行进一步的控制:

  格式:%[(name)][flags][width].[precision]type

  参数说明:

  (name)  为命名

  flags   可选值;+表示右对齐;-表示左对齐;' '为一个空格,表示在正数的左侧填充一个空格,从而与负数对齐。0表示使用0填充。#表示八       进制时前面补充0,16进制数填充0x,二进制填充0b

  width     表示显示宽度

  .precision   表示小数点后精度的位数,例如精确到2位: %.2f

  type   输入格式类型,请看上面

  例子:

  1.打印字符串;

print("%s欢迎你!" % "北京")

------------------输出结果-----------------------

北京欢迎你!

  2.打印整数;

print("今天最高温度%d°" % 40)

------------------------输出结果----------------------

今天最高温度40°

  3.打印浮点数

print("他的身高是%f米" % (1.83))

-----------------------输出结果----------------------

他的身高是1.830000米

  4.打印浮点数,指定保留小数点位数

print("他的身高是%.2f米" % (1.83))

--------------------输出结果------------------------

他的身高是1.83米

  5.指定占位符宽度

print("Name:%5s  Age:%5d   Height:%8.2f" % ("ZJK",23,18.88))

-----------------------输出结果---------------------------

Name:  ZJK  Age:   23   Height:   18.88

  6.指定占位符宽度(左对齐)

print("Name:%-5s  Age:%-5d   Height:%-8.2f" % ("ZJK",23,18.88))

----------------------输出结果-------------------------

Name:ZJK    Age:23      Height:18.88

  7.指定占位符(使用0填充)

print("Name:%05s  Age:%05d   Height:%08.2f" % ("ZJK",23,18.88))

--------------------------输出结果------------------------------ Name: ZJK Age:00023 Height:00018.88

  8.打印百分号;

print("下载已进行%s%%" % (80))

------------------输出结果----------------------

下载已进行80%
posted @ 2018-07-28 17:06  最底层  阅读(580)  评论(0编辑  收藏  举报