【跟小嘉学习Python 程序设计】第三章 Python编程基础

系列文章目录

【跟小嘉学习Python 程序设计】第一章 开发环境搭建
【跟小嘉学习Python 程序设计】第二章 Python编程基础概念
【跟小嘉学习Python 程序设计】第三章 Python编程基础

前言

本章节讲解Python的基础内容包括了Hello World、数学运算、浮点数误差问题、类型转换、布尔类型、逻辑操作、比较操作等基础内容。

一、Hello World

虽然 Python 提供有交互式的命令模式,但是很多情况下,对于程序的编写定义在源文件之中,在Python里面所有的源文件的后缀名称必须是 *.py 的格式。

范例:hello.py

#!/usr/bin/env python3 
#coding:UTF-8
print("hello world");

程序执行结果

>python hello.py
hello world

在计算机的世界里面,所有的文件都会存在相应的编码,在 现代的开发之中都会出现许多编码形式,例如 unicode、utf-8、ascII、要求你文件保存的编码与程序中定义的编码必须相同,否则会出现乱码,详细文档可以参考我的另一篇关于字符编码的博客。

本程序之中使用了 print() 函数,函数就是一个完成一个特定功能的代码组织结构。

二、数据类型介绍

在Python之中的数据类型包括整型浮点型复数布尔类型字符串列表元组字典日期等,并且全部都是引用传递数据类型

在其他编程语言里面都会将数据类型分为基本数据类型(使用数值传递)、引用类型(引用传递)。

二、简单的概念介绍

2.1、数学运算

在Python之中支持以下几种数学运算

No运算符描述
1*乘法运算
2+加法运算
3-减法运算
4/除法运算
5//除法运算(求商)
6%取模运算(求余)
7**幂运算

注:

在Python3之中,//号的用法而python2之中的除法相同;

除法运算在Python2之中,除法是采用取整的方式,即1/2=0,而在python3之中1/2=0.5,1//2=0;

float also accepts the strings “nan” and “inf” with an optional prefix “+” or “-” for Not a Number (NaN) and positive or negative infinity.

浮点数还包括两个字符串表示的

字符串描述
nan不是一个数
inf表示无穷大

例:

>>> type(float('nan'))
<class 'float'>
>>> type(float('inf'))
<class 'float'>
>>> type(float('a'))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: could not convert string to float: 'a'

2.2、浮点数误差累积问题

浮点数的表示是有误差的。0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1
浮点数误差类型问题

2.3、类型转换

内建函数描述
abs(x)求x的绝对值
int(x)把x转换为整型
float(x)把x转换为浮点型
complex(re, im)通过re(实数部分),im(虚数部分,默认为零)构造一个复数类型

既然提到了复数类型,负数可以通过z.real获得实数部分,z.imag获得虚数部分。

例如

z = 1 + 2j
>>> z.imag
2.0
>>> z.real
1.0

在复数的运算里面,有一个概念叫做共轭复数,通过c.conjugate()方法,可以等到C的共轭复数。

共轭复数:对于复数z=a+bj ,称复数z’=a-bj为z的共轭复数。至于共轭复数的特性,自己参考数学相关知识点。

三、 布尔类型相关

3.1、布尔类型

在python之中布尔类型只有两个值,True和False;注这里的大写。实际上 TrueFalse 就是1和0,分别表示真和假。

由于它们实际上就是 0 和 1,所以它们可以参加数学运算(但不推荐)。

在Python之中以下几种情况都被认为是False:

  • None和False
  • 任何数值类型的0:0, 0.0, 0j, Decimal(0), Fraction(0, 1)
  • 空的序列或集合:empty sequences and collections: ‘’, (), [], {}, set(), range(0)

3.2、逻辑操作

OperationResult
x or yif x is false, then y, else x
x and yif x is false, then x, else y
not xif x is false, then True, else False

3.3、比较操作

OperationMeaning
<strictly less than
<=less than or equal
>strictly greater than
>=greater than or equal
==equal
!=not equal
isobject identity
is notnegated object identity

四、流程控制

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小嘉丶学长

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值