Python 基础语法

前言

Python 的优缺点和安装方法,这里就不再赘言了,这里直接上手,本章介绍一些基础知识。

本分类下的所有文章均基于 Python 2.7 版本。

第一个 Python 程序

先来一个 Hello World 吧。

1

print("Hello World!")

注释

123456

# 单行注释# print("Hello World!")'''多行注释'''

变量

Python 中的变量:

Python 中的变量是弱类型的,与 Java 不同,Java 在定义变量是需要指定数据类型,而 Python 直接声明就可以了,Python 会根据变量中的数据,来确定变量的类型。 也可以使用 type(变量名称),来查看变量的类型。

标识符与关键字

标识符

标识符:开发人员在程序中自定义的一些符号和名称,标示符是自己定义的,如变量名 、函数名等。

标识符的规则:标示符由字母、下划线和数字组成,且数字不能开头(区分大小写)。

关键字

关键字:是 Python 已经使用的一些具有特殊功能的标示符,所以不允许开发者自己定义和关键字相同的名字的标示符。

Python 内置关键字:

1234

and as assert break class continue def delelif else except exec finally for from globalif in import is lambda not or passprint raise return try while with yield

输出

版本差异

Python2 与 Python3 的输出方式还有一些差异:

Python2:

12

print("Hello,World!")print "Hello,World!"

Python3:

1

print("Hello,World!")

Python3 把 print 方法当成了一个函数,因为这种方法对 Python2 和 Python3 都通用,所以我们采用这种方式。

格式化输出

在程序中,看到了 % 这样的操作符,这就是 Python 中格式化输出。

123

age = 18name = "xiaohua"print("我的姓名是%s,年龄是%d"%(name,age))

格式化符号

格式符号

转换

%c

字符

%s

通过str() 字符串转换来格式化

%i

有符号十进制整数

%d

有符号十进制整数

%u

无符号十进制整数

%o

八进制整数

%x

十六进制整数(小写字母)

%X

十六进制整数(大写字母)

%e

索引符号(小写’e’)

%E

索引符号(大写“E”)

%f

浮点实数

%g

%f和%e 的简写

%G

%f和%E的简写

换行输出

在输出的时候,如果有 \n 那么,此时 \n 后的内容会在另外一行显示。

123

print("1234567890-------") # 会在一行显示print("1234567890\n-------") # 一行显示1234567890,另外一行显示-------

print 语句默认会在输出末尾加入一个 \n,也就是会默认换行。 也可以指定 print 在末尾输出的字符:print("abc",end="")

输入

在 Python2 中有两个输如函数:

  • raw_input():会把用户输入的任何值都作为字符串来对待。
  • input()input() 函数与 raw_input() 类似,但其接受的输入必须是表达式,如 5 + 3,或者输入内容加双引号,以当字符串表示。

在 Python3 中没有 raw_input() 函数,只有 input(),并且 Python3 中的 input() 与 Python2中的raw_input() 功能一样。

运算符

计算运算符

Python 支持以下几种运算符:

  • 算数运算符

运算符

描述

实例

+

两个对象相加 a + b 输出结果 30

-

得到负数或是一个数减去另一个数 a - b 输出结果 -10

*

两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200

/

x除以y b / a 输出结果 2

//

取整除

返回商的整数部分 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0

%

取余

返回除法的余数 b % a 输出结果 0

**

返回x的y次幂 a**b 为10的20次方, 输出结果 100000000000000000000

  • 赋值运算符

运算符

描述

实例

=

赋值运算符

把=号右边的结果给左边的变量 num=1+2*3 结果num的值为7

  • 复合赋值运算符

运算符

描述

实例

+=

加法赋值运算符

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=3,b=3则(a == b) 为 true.

!=

检查两个操作数的值是否相等,如果值不相等,则条件变为真。

如a=1,b=3则(a != b) 为 true.

<>

检查两个操作数的值是否相等,如果值不相等,则条件变为真。

如a=1,b=3则(a <> b) 为 true。这个类似于 != 运算符

>

检查左操作数的值是否大于右操作数的值,如果是,则条件成立。

如a=7,b=3则(a > b) 为 true.

<

检查左操作数的值是否小于右操作数的值,如果是,则条件成立。

如a=7,b=3则(a < b) 为 false.

>=

检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立。

如a=3,b=3则(a >= b) 为 true.

<=

检查左操作数的值是否小于或等于右操作数的值,如果是,则条件成立。

如a=3,b=3则(a <= b) 为 true

逻辑运算符

运算符

逻辑表达式

描述

实例

and

x and y

布尔”与” - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。

(a and b) 返回 20。

or

x or y

布尔”或” - 如果 x 是 True,它返回 True,否则它返回 y 的计算值。

(a or b) 返回 10。

not

not x

布尔”非” - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。

not(a and b) 返回 False

数据类型转换

函数

说明

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 转换为一个列表

chr(x )

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

unichr(x )

将一个整数转换为Unicode字符

ord(x )

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

hex(x )

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

oct(x )

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

举例

1234

a = '100' # 此时a的类型是一个字符串,里面存放了100这3个字符b = int(a) # 此时b的类型是整型,里面存放的是数字100print("a=%d"%b)

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏zingpLiu

Go语言的数组

在 Go 语言里,数组是一个长度固定的数据类型,用于存储一段具有相同的类型的元素的连续块。数组存储的类型可以是内置类型,如整型或者字符串,也可以是某种结构类型。

13740
来自专栏水击三千

JavaScript对象和数组

在JavaScript中对象是一种数据结构,用于将数据和功能组织在一起,描述一类对象所具有的属性和方法。 对象是某个特定类型的实例。新对象是new操作符后跟一个...

26970
来自专栏xiaoxi666的专栏

STL中sort排序算法第三个参数_Compare的实现本质

关于C++ STL vector 中的sort排序算法有三种自定义实现,它们本质上都是返回bool类型,提供给sort函数作为第三个参数。

23320
来自专栏北京马哥教育

一文搞懂 Python 正则表达式用法

15530
来自专栏闵开慧

java归并排序(最精简代码)

public class MergeSortTest { public void sort(int[] array, int left, int right)...

43550
来自专栏闻道于事

Java之数字处理类浅析

包装类: 数据类型相对的包装类: byte---Byte short---Short int---Integer long---Long float---Flo...

32950
来自专栏北京马哥教育

一文读懂Python可迭代对象、迭代器和生成器

15260
来自专栏机器学习算法与Python学习

Python: 对迭代器的小结

迭代器 迭代器是在python2.2中被加入的,它为类序列对象提供了一个类序列的接口。有了迭代器可以迭代一个不是序列的对象,因为他表现出了序列的行为。当在pyt...

35060
来自专栏杂七杂八

简单的正则表达式

特殊字符 ^ $ * ? + {2} {2,} {2,5} | [] [^] [a-z] . \s \S \w \W [\u4E00-\u9FA5] ...

29760
来自专栏Danny的专栏

【J2SE快速进阶】——数组(及其内存分析 )

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/huyuyang6688/article/...

13040

扫码关注云+社区

领取腾讯云代金券