Python基础之变量&基础语法
一 变量
1.1 声明变量
name = "joe1991"
上述代码声明了一个变量,变量名为: name,变量name的值为:"joe1991"
当我们声明变量时,Python解释器做了两件事情:
1. 在内存中创建了一个'joe1991'的字符串
2. 在内存中创建了一个名为name的变量,并把它指向'joe1991'
1.2 变量的命名规范
1. 变量名只能是字母、数字或下划线的任意组合
2. 变量名的第一个字符不能是数字
3. 关键字不能声明为变量名
Python 的标准库提供了一个 keyword 模块,可以输出当前版本的所有关键字:
>>> import keyword >>> keyword.kwlist ['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
1.3 变量的赋值
在Python中,等号=是赋值语句,可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的变量,例如:
a = 'joe1991' a = 18
1.4 变量名的两种风格
# 驼峰体(常用在类名) 大驼峰:GetCode = xxx 小驼峰:getCode = xxx # 下划线(常用在普通变量、函数名、模块等) get_code = xxx
1.5 定义变量的三个特征:id,type,value
# 说明: # 1. id代表变量值在内存中的位置,type代表变量类型,value代表变量的值 # 2. 等号比较value # 3. is比较id # 强调: # 1. id相同,意味着type和value必定相同 # 2. value相同type肯定相同,但id可能不同,如下: >>> a = 11111 >>> b = 11111 >>> id(a) 2917163093968 >>> id(b) 2917165784464 >>> a == b True >>> a is b False
python中为了提升效率,节约内存,引入了代码块的缓存机制及小数据池,可参考文章:Python基础之代码块&缓存机制&小数据池
二 常量
所谓常量就是不能变的变量,比如常用的数学常数π就是一个常量。在Python中,通常用全部大写的变量名表示常量:
PI = 3.14159265359
但事实上PI仍然是一个变量,Python根本没有任何机制保证PI不会被改变,所以,用全部大写的变量名表示常量只是一个习惯上的用法,控制不了我们对其的修改。
三 输入输出
3.1 输出
之前我们已经玩过输出了,但py2或py3有点区别:
# 在python3中
>>> print('xxx')
xxx
# 在python2中
>>> print 'xxx'
xxx
>>> print('xxx')
xxx
3.2 输入
# 在python3中
# input:用户输入任何值,都存成字符串类型
>>> name = input('Please input your name:>>')
Please input your name:>>joe1991
>>> name
'joe1991'
>>> type(name)
<class 'str'>
# 在python2中
# input:用户输入什么类型,就存成什么类型
# raw_input:等于python3的input
>>> name = input('Please input your name:>>')
Please input your name:>>111
>>> name
111
>>> type(name)
<type 'int'>
>>> name = input('Please input your name:>>')
Please input your name:>>'joe1991'
>>> name
'joe1991'
>>> type(name)
<type 'str'>
另外,在输入密码时,如果想要不可见,需要利用getpass 模块中的 getpass方法,即:
>>> import getpass
>>> pwd = getpass.getpass('Please input your password:>>')
Please input your password:>>
>>> pwd
'123456'
三 注释
Python中单行注释以 # 开头,实例如下:
# 第一个注释
print ("Hello, Python!") # 第二个注释
多行注释可以用多个 # 号,还有 ''' 和 """:
# 第一个注释
# 第二个注释
'''
第三注释
第四注释
'''
"""
第五注释
第六注释
"""
print ("Hello World")
四 文件头
#!/usr/bin/env python # -*- coding: utf-8 –*-
第一行是为了告诉Linux/OS X系统,这是一个Python可执行程序,Windows系统会忽略这个注释
第二行是为了告诉Python解释器,按照UTF-8编码读取源代码,否则,你在源代码中写的中文输出可能会有乱码
注意:申明了UTF-8编码并不意味着.py文件就是UTF-8编码的,必须并且要确保文本编辑器正在使用UTF-8编码
五 流程控制和缩进
python最具特色的就是使用缩进来表示代码块,不需要使用大括号 {} 。
缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数。实例如下:
# 实例需求如下 # 提示输入用户名和密码 # 验证用户名和密码 # 如果错误,则输出用户名或密码错误 # 如果成功,则输出登录成功
#!/usr/bin/env python
# -*- coding: utf8 -*-
name = input('请输入用户名:')
pwd = input('请输入密码:')
if name == "joe1991" and pwd == "123":
print("登录成功")
else:
print("用户名和密码错误")
六 多行语句
Python 通常是一行写完一条语句,但如果语句很长,我们可以使用反斜杠(\)来实现多行语句,例如:
total = item_one + \
item_two + \
item_three
在 [], {}, 或 () 中的多行语句,不需要使用反斜杠(\),例如:
total = ['item_one', 'item_two', 'item_three',
'item_four', 'item_five']
七 空行
函数之间或类的方法之间用空行分隔,表示一段新的代码的开始。类和函数入口之间也用一行空行分隔,以突出函数入口的开始。
空行与代码缩进不同,空行并不是Python语法的一部分。书写时不插入空行,Python解释器运行也不会出错。但是空行的作用在于分隔两段不同功能或含义的代码,便于日后代码的维护或重构。
记住:空行也是程序代码的一部分。
八 同一行显示多条语句
Python可以在同一行中使用多条语句,语句之间使用分号(;)分割,如下:
print('Hello');print('World');print('!')

浙公网安备 33010602011771号