Python -- 语法和变量

小Q:风一更,雪一更,聒碎乡心梦不成,故园无此声。           ----纳兰容若《长相思》

---------------------------------------------------------------------------------------------------

以下个人归纳总结,献给大家和自己,嘿嘿。。。

Python支持两种编程方式,交互式编程和脚本式编程。

前者即在python环境界面,命令行输入,通过python解释器交互编程;

后者通过脚本参数调用解释器执行脚本,直到脚本执行完后,解释器不再有效。

------------------------------------------基础语法--------------------------------------

Python 标 识 符

在python里,标识符有字母、数字、下划线组成;

并且严格区分大小写;        并且不能以数字开头;      以下划线开头是有意义的,如下:

以单下划线开头(_foo)是不能直接访问的类属性,需通过类提供的接口进行访问,不能用"from xxx import *"而导入;

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

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

Pthon 的 行 和 缩 进

Python与其他语言最大的区别就是,Python的代码块不是用大括号({})来控制类,函数以及其他逻辑判断;而python最具特色的就是用缩进来写模块。

缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。如下所示:

if True:
    print "True"
else:
  print "False"

以下代码将会执行错误:

#!/usr/bin/python
# -*- coding: UTF-8 -*-# 文件名:test.py

 if True:
    print "Answer"
    print "True"
   else:
    print "Answer"
    # 没有严格缩进,在执行时保持
  print "False"

错误一:IndentationError: unexpected indent

编译器是在告诉你"Hi,老兄,你的文件里格式不对了,可能是tab和空格没对齐的问题";

错误二: IndentationError: unindent does not match any outer indentation level

你使用的缩进方式不一致,有的是 tab 键缩进,有的是空格缩进,改为一致即可。

Python 的 多 行 语 句

Python语句中一般以新行作为为语句的结束符。

但是我们可以用( \)将一行的语句分为多行显示,如下所示:

total = item_one +         item_two +         item_three

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

days = [‘Monday‘, ‘Tuesday‘, ‘Wednesday‘,
        ‘Thursday‘, ‘Friday‘]

Python 的 引 号

Python包含单引号、双引号、三引号(三个单引号和三个双引号)。

单双引号作用相同,不过却应对了句子或段落中包含单引号,或双引号的情况,不用输转义附了;

三引号可用于写文本,不用多的输换行符 (\),即可换行的功能;另外在特定的地,有注释的功能。

----------------------------------------变量类型---------------------------------------

变量是存储在内存中的值。意味着创建变量时会在内存中有一个空间;变量可以是整数,小数或字符

基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。

Python 变 量 赋 值

Python中的变量不需要声明,变量的赋值操作既是变量声明和定义的过程。

每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。

等号(=)用来给变量赋值。运算符左边是变量名,右边是存储在变量中的值。例如:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
counter = 100   # 赋值整型变量
miles = 1000.0  # 浮点型
name = "John"   # 字符串
print counter
print miles
print name

输出:

100
1000.0
John

多个变量赋值,例如:

a = b = c = 1                #将1同时赋给了 a b c

多个对象指定多个变量,例如:

a, b, c = 1, 2, "john"              #将1赋给里a;2赋给了b,jokn赋给了c

Python 数 据 类 型

数 值 类 型 :

int整型 long长整型 float浮点 complex复数
10 51924361L 0.0 3.14j
100 -0x19323L 15.20 45.j
-786 0122L -21.9 9.322e-36j
080 0xDEFABCECBDAECBFBAEl 32.3+e18 .876j
-0490 535633629843L -90. -.6545+0J
-0x260 -052318172735L -32.54e100 3e+26J
0x69 -4721885298529L 70.2-E12 4.53e-7j

长整型也可以使用小写"L",但是还是建议您使用大写"L",避免与数字"1"混淆;

Python还支持复数,a + bj 或者 complex(a,b)表示,
复数的实部a和虚部b都是浮点型。

数 据 类 型 及 转 换 :

Numbers(数字)                String(字符串)

List(列表)       Tuple(元组)               Dictionary(字典)

函数 描述

int(x [,base])


将x转换为一个整数


long(x [,base] )


将x转换为一个长整数


float(x)


将x转换到一个浮点数


complex(real [,imag])


创建一个复数


str(x)


将对象 x 转换为字符串


repr(x)


将对象 x 转换为表达式字符串


eval(str)


用来计算在字符串中的有效Python表达式,并返回一个对象


tuple(s)


将序列 s 转换为一个元组


list(s)


将序列 s 转换为一个列表


set(s)


转换为可变集合


dict(d)


创建一个字典。d 必须是一个序列 (key,value)元组。


frozenset(s)


转换为不可变集合


chr(x)


将一个整数转换为一个字符


unichr(x)


将一个整数转换为Unicode字符


ord(x)


将一个字符转换为它的整数值


hex(x)


将一个整数转换为一个十六进制字符串


oct(x)


将一个整数转换为一个八进制字符串

Python 字 符 串

字符串或串(String)是由数字、字母、下划线组成的一串字符。

一般记为 : s="a1a2···an"  (n>=0)

python的字串列表有2种取值顺序:

从左到右索引默认0开始的,最大范围是字符串长度少1

从右到左索引默认-1开始的,最大范围是字符串开头

举   例 :

str = ‘Hello World!‘

print str                    # 输出完整字符串
print str[0]               # 输出字符串中的第一个字符
print str[2:5]            # 输出字符串中第三个至第五个之间的字符串
print str[2:]              # 输出从第三个字符开始的字符串
print str * 2             # 输出字符串两次
print str + "TEST"   # 输出连接的字符串

输出结果:

Hello World!
H
llo
llo World!
Hello World!Hello World!
Hello World!TEST

-------------------------------------------运算符------------------------------------------

算数运算符:a为10,变量b为20

运算符 实例
+ a + b 输出结果 30
- a - b 输出结果 -10
* a * b 输出结果 200
/ b / a 输出结果 2
% b % a 输出结果 0
** a**b 为10的20次方, 输出结果 100000000000000000000
// 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0

比较运算符:a为10,变量b为20

运算符 实例
== (a == b) 返回 False。
!= (a != b) 返回 true.
<> (a <> b) 返回 true。这个运算符类似 != 。
> (a > b) 返回 False。
< (a < b) 返回 true。
>= (a >= b) 返回 False。
<= (a <= b) 返回 true。

赋值运算符:a为10,变量b为20

运算符 实例
= c = a + b 将 a + b 的运算结果赋值为 c
+= c += a 等效于 c = c + a
-= c -= a 等效于 c = c - a
*= c *= a 等效于 c = c * a
/= c /= a 等效于 c = c / a
%= c %= a 等效于 c = c % a
**= c **= a 等效于 c = c ** a
//= c //= a 等效于 c = c // a

位运算符:a 为 60,b 为 13

运算符 实例
& (a & b) 输出结果 12 ,二进制解释: 0000 1100
| (a | b) 输出结果 61 ,二进制解释: 0011 1101
^ (a ^ b) 输出结果 49 ,二进制解释: 0011 0001
~ (~a ) 输出结果 -61 ,二进制解释: 1100 0011, 在一个有符号二进制数的补码形式。
<< a << 2 输出结果 240 ,二进制解释: 1111 0000
>> a >> 2 输出结果 15 ,二进制解释: 0000 1111

逻辑运算符:变量a是10,变量b是20.

运算符 逻辑表达式 实例
and x and y (a and b) 返回 20。
or x or y (a or b) 返回 10。
not not x not(a and b) 返回 False

成员运算符:

运算符 实例
in x 在 y 序列中 , 如果 x 在 y 序列中返回 True。
not in x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。

身份运算符:

运算符 实例
is x is y, 如果 id(x)  等于 id(y) , is 返回结果 1
is not x is not y, 如果 id(x) 不等于 id(y). is not 返回结果 1

-----------------------------------------------运算符优先级-----------------------------------------

运算符 描述
** 指数 (最高优先级)
~ + - 按位翻转, 一元加号和减号 (最后两个的方法名为 [email protected] 和 [email protected])
* / % // 乘,除,取模和取整除
+ - 加法减法
>> << 右移,左移运算符
& 位 ‘AND‘
^ | 位运算符
<= < > >= 比较运算符
<> == != 等于运算符
= %= /= //= -= += *= **= 赋值运算符
is is not 身份运算符
in not in 成员运算符
not or and 逻辑运算符

---------------------------------------------扩展---------------------------------------------

内置函数:id(a)        #查看变量a的内存存储地址

type(b)   #查看变量b的数值类型

内建函数:input( )    raw_input( )

查看帮助:help  (input)

举      例 :

#!/usr/bin/python

#coding=uft-8

num1 = input("please input  a  number:")

num2 = input("please input  a  number:")

print  num1 + num2

print  num1 / num2

print  "s% - s% = s%"  %  (num1,num2,num1-num2)

print  "s% * s% = s%"  %  (num1,num2,num1 * num2)

时间: 2024-10-29 19:08:20

Python -- 语法和变量的相关文章

写一个函数,识别字符串是否符合python语法的变量名

2018年01月05日 09:07:19 阅读数:115 # 写一个函数,识别字符串是否符合python语法的变量名 # 导入关键字 import keyword key_word = keyword.kwlist def python_grammar(num): # 判断输入的空字符 if num == "": print("不符合python命名规则") return count = 0 while count < len(num): # 判断字符串的所有

python_基本语法之变量

一 编程语言分类 机器语言:直接使用二进制指令去编写程序,直接操作硬件,必须考虑硬件细节 汇编语言:用英文标签取代二进制指令去编写程序,直接操作硬件,必须考虑硬件细节 高级语言:用人类能理解的表达方式去编写程序,通过操作系统间接地操作硬件,无需考虑硬件细节.可以分为: 编译型:编译型语言的先将源代码编译生成机器语言,再由机器运行机器码(二进制). 程序在执行之前需要一个专门的编译过程,把程序编译成 为机器语言的文件,运行时不需要重新翻译.程序执行效率高,依赖编译器,跨平台性差.如C.C++.De

Python基础语法及变量

Python基础语法及变量 基础语法 变量类型 格式化输出之百分号% 1.基础语法 第一个Python程序 交互式编程: 交互式编程不需要创建脚本文件,是通过 Python 解释器的交互模式进来编写代码. linux上你只需要在命令行中输入 Python 命令即可启动交互式编程,提示窗口如下: [[email protected] ~]# python Python 2.7.5 (default, Jun 17 2014, 18:11:42) [GCC 4.8.2 20140120 (Red H

04-1 python语法入门之变量

目录 一 引入 二 变量 1.什么是变量? 2.为什么要有变量? 3.怎么使用变量 (先定义.后调用) 3.1 变量的定义与使用 3.2 变量名的命名规范 3.3 变量名的命名风格 3.4 变量值的三大特性 三 常量 1.什么是常量? 2.为什么要有常量? 3.怎么使用常量? 四 视频链接 https://www.bilibili.com/video/av73342471/?p=4 一 引入 我们学习python语言是为了控制计算机.让计算机能够像人一样去工作,所以在python这门语言中,所有

一、 Python概述、变量

一.        Python概述 1.python是一门面向对象,解释型的脚本语言.语法简洁,编写效率高,但是执行(底层运行)效率低(总的来说解释语言执行效率低于编译语言). 注意:本博客所有的代码都是按照Python3的标准创建的. 2.主要的语言特点是:任何的语句可以独立存在.并且代码块是以(:)开始的,注意每个语句的缩进空格(缩进格式决定语句的包含关系和执行顺序),在python里面缩进空格相当于java里面的"{ }",并且没有一个明确的规定说要求几个空格,一般如果本句被上

转 python语法学习面向对象之继承

传送门 python语法学习面向对象之继承 只要涉及到面向对象,”类“是必须出现的一个代名词. 类和对象是面向对象编程的两个主要方面.类创建一个新类型,而对象是这个类的实例. 类的一些概念: 包括初始化方法__init__,可以理解为构造,self,理解为this,等等在前一篇文章中介绍过,现在就学习类的继承. 继承: 面向对象的编程带来的主要好处之一是代码的重用,实现这种重用的方法之一是通过继承机制.继承完全可以理解成类之间的类型和子类型关系. 需要注意的地方:继承语法   class 派生类

Python学习笔记 | 变量 + 引用 + 拷贝 + 作用域

在Python中,变量是没有类型的,在使用变量的时候,不需要提前声明,只需要给这个变量赋值即可.但是,当用变量的时候,必须要给这个变量赋值:如果只写一个变量,而没有赋值,那么Python认为这个变量没有定义(not defined). 一.变量和对象 1. 可变对象和不可变对象 在Python中,对象分为两种:可变对象和不可变对象,不可变对象包括int,float,long,str,tuple等,可变对象包括list,set,dict等.需要注意的是:这里说的不可变指的是值的不可变.对于不可变类

Python学习笔记---变量与数据类型

Python中的变量与内置数据类型 本文只是我在慕课网学习<Python入门>这门课程时,摘录.整理的一些对自己比较重要的语法与提示.九成以上的内容以及所有代码示例,均摘抄自慕课网.由于我本人有一定C/C++语言基础,而本文主要供我自己复习使用,所以我偏向于摘录一些Python和C/C++之间的差异之处,可能造成本文语义上不一定连贯,建议有学习需求的读者直接前往慕课网学习该课程(链接:http://www.imooc.com/learn/177)或是查看该门课程授课教师廖雪峰先生官方网站所给出

Python之路-变量和基本数据类型

一.注释 注释的作用: 增加程序的可读性 作为调试用 提高团队的合作效率 注释的分类 1.单行注释 以井号(#)开头,右边的所有内容当做说明 2.多行注释 以三对单引号('''注释内容''')将注释包含起来 其他语法 Python的语法比较简单,采用缩进的方式. # print absolute value of an integer: a = 100 if a >= 0: print(a) else: print(-a) 上面代码中,以'# '是注释的标识符,可以记录当前代码所代表的意义,解释