第三节 简单的Python数据类型、变量赋值及输入输出

Python是一门解释性语言,它的执行依赖于Python提供的执行环境,前面一章介绍了Python环境安装、WINDOWS系列Python编辑和运行界面等内,这节就开始真正的语言学习了。本节介绍的内容是为了大家尽快开始使用Python编写简单的代码,是Python编程最基本的内容。

一、 Python的基础数据类型

学语言首先要知道语言的数据类型,Python数据类型比较多,本节只引入最基础的字符串(str)和整数(int)、浮点数(float)三个类型,具体内容及其他类型后续章节再详细介绍。

这里简单介绍一下str类型,这个类型与c语言的字符串类型差不多,但有以下区别:

1、 字符串类型的值可以使用单引号、双引号、三引号(三个单引号)进行标记,其定义的变量都是字符串,但三个的使用上还是有些区别,这个在后面详细介绍字符串类型时再细讲;

2、 Python的字符串中一旦赋值后,其中的每个元素不允许再修改,就是字符串是只读的;

3、 Python的字符串支持加法和乘法,加法就是将两个字符串连接起来,但两个参与运算的字符串本身不会改变,乘法将字符串s乘以n时,就是将s复制n次,但原字符串不会改变;

4、 两者使用的函数有差别,具体后面细讲;

5、 Python中没有c语言等的char(字符)类型。

二、 Python的变量及赋值

Python变量无需预先定义,只需要在使用前进行赋值就可以,Python会根据赋值确认变量的类型。这是Python与C语言差异比较大的地方。Python的赋值语句很简单:

变量=赋值表达式

举例:

n=1

s=’This is a test’

f = 2.0

n、s、f这三个变量无需预先定义,在赋值后自动变为了int、str、float类型。

这三个变量的赋值还有另外一种方法:

n,s,f=1,‘this is a test’,2.0

(n,s,f)=(2,‘ss’,3.0)

(n,s,f)=2,‘ss’,3.0

n,s,f=(4,‘asas’,3.2)

这可以一次给多个变量赋值,这里用到一个复杂数据类型:tuple(元组),四个赋值语句的效果是等价的,后面介绍元组的时候再详细解释。

Python的赋值语句与C语言的差别如下:

1、 支持元组赋值方式;

2、 不支持c语言多个语句一行以逗号分隔的多个变量赋值语法(如a=1,b=2,c=3);

3、 语句的最后无需分号结束,所有Python的语句结尾都无需分号,但如果加了分号也可以;

4、 Python赋值语句能确认变量的类型,而不是C语言中先定义类型后赋值;

5、 如果一个变量多次赋值不同类型的值,其类型会随着赋值语句情况的改变而改变,而C语言是一旦定义了类型就不能改变;

6、 Python对很多类型可以直接进行强制类型转换,方法是在需要转换的变量或常量用圆括号括起来并在括号前加需要转换到的类型,如n=int(’123’)。哪些能转哪些不能转,转了后的值怎么变化在后面章节再详细介绍。

这些特性是不是很神奇!

三、 Python的简单输入输出

1、Python的界面接收输入简单函数为input、输出为print。其调用语法如下:

str input(提示字符串)

返回一个字符串类型,如果需要将其转换 其他类型,则需要强制类型转换。

如:

name=input(‘Please input your name:’)

age=int(input(“Input your age:”))

sex=input(‘’’请输入你的性别:’’’)

注意:上面的提示语用了三种不同的引号形式,在这三个语句中它们的效果是一样的。

2、Python的界面输出简单函数为print,其调用方法与c语言的printf类似,但在变量使用的格式化字符串时有区别。其调用语法如下:

print(value, …, sep=’ ‘, end=’\n’, file=sys.stdout, flush=False)

具体语法在后面章节再详细介绍。

举例:

print(‘Hello,world!’)

print(‘age=’+str(age))

print(‘age=%d’%age)

print(‘name=%s,age=%d’%(name,age))

注意后面2种方式在C语言中是不一样的,第3、4种方式并不是由print函数决定的,而是字符串变量格式化确认的,它们与下面语句效果等价。

s1=‘age=%d’%age

s2=‘name=%s,age=%d’%(name,age)

print(s1)

print(s2)

具体内容到字符串介绍章节再细讲。

有了前面介绍的内容,大家就可以编写简单的Python代码了。

举例:编写一个要求用户输入姓名,随后打印欢迎的语句的代码

代码就两行:

name=input(‘请输入您的姓名:’)

print(‘欢迎’+name+‘来到Python的世界!’)

执行方式,一是直接在交互模式下分两次输入,如下:

name=input(‘请输入您的姓名:’)

请输入您的姓名:张三

print(‘欢迎’+name+‘来到Python的世界’)

欢迎张三来到Python的世界

新开一个文件保存以上两行代码(注意:每行代码前不能有空格,否则会报错。相关内容下节再解释)。如果保存文件,按F5执行,运行结果如下:

请输入您的姓名:xiaomin

欢迎xiaomin来到Python的世界

第2章 Python编程基础知识 第2.1节 简单的Python数据类型、变量赋值及输入输出的更多相关文章

  1. 第2章 Python编程基础知识目录

    第2.1节 简单的Python数据类型.变量赋值及输入输出 第2.2节 Python的语句 第2.3节 Python运算符大全 老猿Python,跟老猿学Python! 博客地址:https://bl ...

  2. python编程基础知识—字典

    字典 在python中,字典是一系列键-值对,每个键都与一个值相关联,可使用键来访问相关联的值.与键相关联的值可以是数字.字符串.列表乃至字典,即可将任何python对象用在字典中的值. 在pytho ...

  3. python编程基础知识—列表(一)

    1 列表 用[]来表示列表,并用逗号分隔其中的元素.如: B=['trek','cannondale','redline','specialized'] print(B) ['trek', 'cann ...

  4. Python编程-基础知识-python项目包和文件的管理以及如何引用相对路径的包和模块

    目录 结构: core |____ __init__.py |____ basic |____ __init__.py |____ database           |____ __init__. ...

  5. python编程基础知识—列表(二)

    3操作列表 3.1 遍历整个列表 使用for循环 cars = ['bmw','audi','toyota','Jeep'] for i in cars: print(i) bmw audi toyo ...

  6. Python编程-基础知识-List

    Negative Indexes(负索引) >>> spam = ['cat', 'bat', 'rat', 'elephant'] >>> spam[-1] 'e ...

  7. Python编程-基础知识-条件判断

    1. 简单的if/else条件判断 judge_flow.py name = input("Please input name: ") if name == 'master': p ...

  8. 16第一章 ASP.Net编程基础知识

    第一章        ASP.Net编程基础知识 第一章        ASP.Net编程基础知识 本章首先介绍用ASP.Net技术编制服务器端动态网页所需的网络和HTML标记语言方面的有关知识.然后 ...

  9. 【RL-TCPnet网络教程】第18章 BSD Sockets基础知识

    第18章      BSD Sockets基础知识 本章节为大家讲解BSD Sockets,需要大家对BSD Sockets有个基础的认识,方便后面章节Socket实战操作. (本章的知识点主要整理自 ...

随机推荐

  1. .NET EF实现NoLock

    sql实现方法:  select * from 表名(nolock)            加上(nolock)    EF实现办法:    程序集引用    System.Transactions  ...

  2. MySql索引使用策略

    MySql索引 索引优点 1.可以通过建立唯一索引或者主键索引,保证数据的唯一性.2.提高检索的数据性能3.在表连接的连接条件 可以加速表与表直接的相连 4.建立索引,在查询中使用索引 可以提高性能 ...

  3. Linux 8个有力的Awk内建变量

    Awk 有几个非常强力的内置变量.通常来说,分为两种类型的内置变量: 第一种是定义的变量可以改变, 比如字段分隔(FS)与记录分隔(RS) 第二种是可以用来数据处理或者数据总结,比如记录数(NR)与字 ...

  4. 2. RDD(弹性分布式数据集Resilient Distributed dataset)

    *以下内容由<Spark快速大数据分析>整理所得. 读书笔记的第二部分是讲RDD.RDD 其实就是分布式的元素集合.在 Spark 中,对数据的所有操作不外乎创建RDD.转化已有RDD以及 ...

  5. 《.NET 5.0 背锅案》第2集:码中的小窟窿,背后的大坑,发现重要嫌犯 EnyimMemcachedCore

    在第1集的剧情中,主角是".NET 5.0 正式版 docker 镜像",它有幸入选第1位嫌疑对象,不是因为它的嫌疑最大,而是它的验证方法最简单,只需要再进行一次发布即可.我们在周 ...

  6. MySQL慢查询开启、日志分析(转)

    说明 Mysql的查询讯日志是Mysql提供的一种日志记录,它用来记录在Mysql中响应时间超过阈值的语句 具体指运行时间超过long_query_time值得SQL,则会被记录到慢查询日志中.lon ...

  7. rbd的image快照与Pool快照

    前言 这个问题是不久前在ceph社区群里看到的,创建image的时候,当时的报错如下: 2016-12-13 23:13:10.266865 7efbfb7fe700 -1 librbd::image ...

  8. Notepad++安装教程

        1.官网下载 官方网站:https://notepad-plus-plus.org/downloads/ 上面有历史版本,一般就选择最新版下载 2.安装 [3]打开记事本进行设置: 设置--& ...

  9. a标签禁用

    a标签禁用可以使用CSS3的特性来控制 <a class="disabled">我是a标签</a> a.disabled { pointer-events: ...

  10. 循序渐进VUE+Element 前端应用开发(27)--- 数据表的动态表单设计和数据存储

    在我们一些系统里面,有时候会需要一些让用户自定义的数据信息,一般这些可以使用扩展JSON进行存储,不过每个业务表的显示项目可能不一样,因此需要根据不同的表单进行设计,然后进行对应的数据存储.本篇随笔结 ...