第2章 Python编程基础知识 第2.1节 简单的Python数据类型、变量赋值及输入输出
第三节 简单的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数据类型、变量赋值及输入输出的更多相关文章
- 第2章 Python编程基础知识目录
第2.1节 简单的Python数据类型.变量赋值及输入输出 第2.2节 Python的语句 第2.3节 Python运算符大全 老猿Python,跟老猿学Python! 博客地址:https://bl ...
- python编程基础知识—字典
字典 在python中,字典是一系列键-值对,每个键都与一个值相关联,可使用键来访问相关联的值.与键相关联的值可以是数字.字符串.列表乃至字典,即可将任何python对象用在字典中的值. 在pytho ...
- python编程基础知识—列表(一)
1 列表 用[]来表示列表,并用逗号分隔其中的元素.如: B=['trek','cannondale','redline','specialized'] print(B) ['trek', 'cann ...
- Python编程-基础知识-python项目包和文件的管理以及如何引用相对路径的包和模块
目录 结构: core |____ __init__.py |____ basic |____ __init__.py |____ database |____ __init__. ...
- python编程基础知识—列表(二)
3操作列表 3.1 遍历整个列表 使用for循环 cars = ['bmw','audi','toyota','Jeep'] for i in cars: print(i) bmw audi toyo ...
- Python编程-基础知识-List
Negative Indexes(负索引) >>> spam = ['cat', 'bat', 'rat', 'elephant'] >>> spam[-1] 'e ...
- Python编程-基础知识-条件判断
1. 简单的if/else条件判断 judge_flow.py name = input("Please input name: ") if name == 'master': p ...
- 16第一章 ASP.Net编程基础知识
第一章 ASP.Net编程基础知识 第一章 ASP.Net编程基础知识 本章首先介绍用ASP.Net技术编制服务器端动态网页所需的网络和HTML标记语言方面的有关知识.然后 ...
- 【RL-TCPnet网络教程】第18章 BSD Sockets基础知识
第18章 BSD Sockets基础知识 本章节为大家讲解BSD Sockets,需要大家对BSD Sockets有个基础的认识,方便后面章节Socket实战操作. (本章的知识点主要整理自 ...
随机推荐
- Prometheus监控告警浅析
前言 最近有个新项目需要搞一套完整的监控告警系统,我们使用了开源监控告警系统Prometheus:其功能强大,可以很方便对其进行扩展,并且可以安装和使用简单:本文首先介绍Prometheus的整个监控 ...
- MobaXterm 连接 VirtualBox 6 虚拟机中的 CentOS 7
1 运行环境 本机系统:Windows 7 虚拟机软件:Oracle VM VirtualBox 6 虚拟机系统:CentOS 7 MobaXterm(安装在本机上) 2 MobaXterm - 远端 ...
- 回流与重绘:CSS性能让JavaScript变慢?
参考张鑫旭博客: http://www.zhangxinxu.com/wordpress/2010/01/%E5%9B%9E%E6%B5%81%E4%B8%8E%E9%87%8D%E7%BB%98%E ...
- nginx&http 第三章 ngx 1-http ngx_http_wait_request_handler
对于活跃的 HTTP 连接,在执行连接建立回调函数 ngx_http_init_connection 的过程中会执行 ngx_http_wait_request_handler 回调函数, 负责 HT ...
- Exactly Once 语义
将服务器的 ACK 级别设置为-1,可以保证 Producer 到 Server 之间不会丢失数据,即 At Least Once 语义. 相对的,将服务器 ACK 级别设置为 0,可以保证生产者每条 ...
- HashMap 链表插入方式 → 头插为何改成尾插 ?
开心一刻 一天,楼主在路上碰到了一个很久没见的朋友,找了个餐馆,坐下聊了起来 楼主:在哪上班了 ? 朋友:火葬场啊 楼主:在那上班,一个月多少钱啊 ? 朋友:两万多啊 楼主(不可思议):多少 ? 朋友 ...
- (一)廖师兄springboot微信点餐SQL建表脚本
数据库设计 数据库表之间的关系 类目表(product_category) 商品表(product_info) 订单主表(order_master) 订单详情表(order_detail) 卖家信 ...
- DockerInstall
1.安装Tomcat 2.安装mysql [1].pull [root@pluto tomcat7logs]# docker pull mysql:5.6 [root@pluto tomcat7log ...
- Java基础—Java方法的调用
Java方法的调用个主要有以下几种: 1.调用非静态方法 2.调用静态方法 3.方法与方法之间的调用 (1).静态方法内部调用其他方法 (2).非静态方法内部调用 1.调用非静态方法: 非静态方法的调 ...
- metasploit2 - vsftpd 漏洞攻击和拿shell
一.环境说明 目标IP: 本人虚拟机 192.168.80.134 ,使用 metasploit2 攻击IP: 本人虚拟机 192.168.80.129 ,使用 kali Metasploitable ...