day3_7.1
1.python的注释
python中为了使代码更容易被人看懂,提高团队开发效率,可使用注释。代码中的注释不加入编译中。
注释有单行注释,如
#这是一段注释
和多行注释:
'''
这是一行注释
'''
当对代码的说明篇幅过大时,多用多行注释进行注解。
2.python的输入和输出
1.python语言中的输入
在解释器3.6版本中,输入函数input所输入的都会以字符串类型输出,而在2.7版本中,使用input输出需要先表明其数据类型,如下:
#3.6版本
input("输入")
#输入lzx后输出lzx
#2.7版本
input("输入")
#输入lzx后会报错
可以看到在2.7版本中输入lzx后会报错,其工作流程是在输入lzx后,解释器会检索名为lzx的变量,再将其输出,而之前并未定义lzx变量,所以错误报告应该是检索lzx失败。所以要输入lzx首先定义变量a,在输出变量a的值即可,如下
a=‘lzx’
input('输入')
#输入a后输出lzx
所以2.7版本和3.6版本的解释器input函数的区别在于3.6会将输入的东西自动转换成字符串类型,在2.7版本中也有一个函数可以将输入内容自动转换成字符串类型。
raw_input('输入')
#输入lzx后输出lzx
所以得出结论2.7版本的raw_input等价于3.6版本的input。
3.格式化输出
在python中,输出一串字符串常用print,如输出”我的名字叫 lzx ,我的爱好是 轮滑!“
print("我的名字叫 lzx 我的爱好是 轮滑!")
然而如果lzx和轮滑在之前就以字符串的方式定义完成,如何输出呢,如下:
name='lzx'
hobby='轮滑'
print("我的名字叫"+name+"我的爱好是"+hobby)
这样是不是很麻烦呢,所以python中有格式化输出的概念,使用%占位符,先占位后定义。如下
print("我的名字叫%s,我的爱好是%s"%(‘lzx’,‘轮滑’))
除了字符串,占位符%d也可占数字类型的数据:
print("我的 年龄是%d岁"%18)
值得注意的是,当一个字符串中有使用占位符后,之后的%都会被视为占位符,如
print("本公司的%s分公司股份上涨了%2"%'上海')
此语句会出现报错,要使出现原句,可以在%前加一个%,就可获得真正的%。
4.python的数据类型
1.int整型
int型数据在日常编程时使用次数非常频繁,几乎处处可见,下面就定义了一个整型:
age=18
2.float浮点型
浮点型数据就是带有小数的数据,值得注意的是即使18.00这类的数据也是浮点型,不可等同于18。
balance=12.88
print(balance,type(balance))
#运行结果为
#12.88 <class 'float'>
3.str字符串
字符串的定义有三种:
#1.单引号
str1='我是字符串1'
#2.双引号定义
str2="我是字符串2"
#3.三引号定义
str3='''我是字符串3'''
其中三引号定义的字符串和多行注释标记相同,于是python中规定,当三引号之前没有定义变量的视为注释。
拥有多种字符串定义方式的目的是防止出现字符串中出现引号的情况。如
print('我的绰号叫'小李'')
如果这样输出,结果会报错,因为解释器分别不出哪个是字符串哪个是引号,所以这里需要双引号的字符串定义方法
print("我的绰号叫'小李'")
这样输出的结果才没有偏差。同理三引号是为了双引号的输出而存在,而且三引号可以写多行字符串。三引号可以是单也可以是双。
4.list列表
列表类似于C语言中的数组而优于数组,列表中可以存储的数据不仅仅是整型或浮点型,还可以存储字典,字符串甚至另一个列表,如
list=[1,2,'lzx',[1,18],{'name':'lzx','age':18}]
在取数据的时候,列表中是由0开始计数,计算机中大部分的计数都是从0开始,由左向右依次为list[0],list[1],list[2],list[3],list[4]。
5.字典
字典也能存储多种且多个数据,并且和列表不同的是它可以对存储的数据进行说明,采用key:value存储方式。例:
my={
'name':'lzx',
'age':18,
'sex':'男',
'hobby':['轮滑','魔方'],
'you':{
'name':'none',
'age':'none'
}
}
可以看到上面代码定义的字典”my“中定义了以字符串为关键字的成员,其中有各种数据类型,包括字典本本身在读取时和数列一样,例,我想要读取my中you字典里的name,如下:
print(my['you']['name'])
检索的时候不再依据存储顺序,而是根据key值,而且字典中是无序存储。
6.boolean布尔值
布尔值指向的值只有两种True和False,非正即负,非对即错,他和整型数据一样可以被变量定义,这里不再过多讲解,举个栗子:
x=100
y=100
print(x==y)
print(x is y)
其中==是判断其值是否相同是则输出布尔值True,is是判断id是否相同,也是输出布尔类型,以上结果输出两个true。
*7复数
复数是由实部和虚部组成,如同x=a+bi,其中a为实部,b为虚部,i的具体值为i^2=-1,
在python中虚部的i被表示为j,所以定义一个复数如下:
a=2+3j
print(a,type(a))
其输出结果为2+3j,complex,complex代表的就是复数类型的数据。
复数中提供了两个函数以输出复数的实数部分和虚数部分,如下
a=2+3j
print(a.real,a.imag)
输出结果为2.0和3.0。
8.长整型lon
在python3.6中没有长整型的概念。
而在python2.7中可以以以下方式定义长整型,在定义int型变量时,只要达到long数据的定义条件时,即会自动转换成long类型,没有明确的定义过程。
a=12L
输出类型为long。
5.运算符
+,-,*,/这里不做太多介绍,值得注意的是/符号运算出的结果是带有小数点的
//运算出的除法是不带有小数点的。
%对除法运算取余。
2**n 2的n次方
!=不等于
+=,-=,*=,/=等运算。
(在字符串的比较规则中,是由其首个字符在ASCLL码表中的大小进行比较,如果相同,顺延到下一个字符)
链式赋值
x=y=z=10
交叉赋值
若要让x=10,y=20,两者的值交换,需要设置一个中间量temp,作为数据的中转
x=101
y=20
temp=0
temp=x
x=y
y=temp
print(x,y)
在python中也有特定的方法交换其值
x=10
y=20
x,y=y,x
解压赋值
在列表的定义中,L=[1,2,3,4]
将该列表分别定义为a,b,c,d的值,我们可以用这种方法
L=[1,2,3,4]
a,b,c,d=L
print(a,b,c,d)
如果说其中b,c两个变量不需要,在python中公共规定使用_承接该数据
L=[1,2,3,4]
a,_,_d=L
print(a,d)
输出结果为1,4,或者这种方法
L=[1,2,3,4]
a,*_,d=L
print(a,d)
*_代替的就是整个列表的中间部分。
6.逻辑运算
逻辑运算符有以下几种:
与 and 只要有一个值为False,结果都为非
或 or 只要有一个值为True,结果都为是
非 not 将结果取反
day3_7.1的更多相关文章
随机推荐
- 【5】Android Service 与 AIDL
前言:本系列仅介绍基本大体的使用步骤,而不对每个步骤进行细致的讲解.读者可作为已经对相关内容有所了解后的快速查阅. 一.单应用内Service的使用 Service组件与Activity以IBinde ...
- 模版引擎Handlebars和Mustache
Handlebars是一款很高效的模版引擎,提供语意化的模版语句,最大的兼容Mustache模版引擎, 提供最大的Mustache模版引擎兼容, 无需学习新语法即可使用; 下面这个是基本的模版表达式, ...
- 求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222。
方法一: var num = ""; var nums = []; var a = Number(prompt());//所要拼接的数字 var b = Number(prompt ...
- 元数据MetaData(五)
JDBC的元数据接口有: DatabaseMetaData数据库级 ResultSetMetaData结果集级 一.DatabaseMetaData 在对数据源进行连接以后,得到一个Connectio ...
- 终于把Apollo存储加密这件事搞定了
本文摘自于<Spring Cloud微服务 入门 实战与进阶>一书. 一些比较重要的配置信息,比如密码之类的敏感配置,我们希望将配置加密存储,保证安全性.Apollo框架本身没有提供数据加 ...
- SpringBoot2.0中的事务@Transactional
在SpringBoot2.0中使用使用需要注意的地方. 1. 加@Transactional的方法不能是private和protected修饰,private会直接报编译错误,protected不会报 ...
- Java内功心法,Set集合的详解
本人免费整理了Java高级资料,涵盖了Java.Redis.MongoDB.MySQL.Zookeeper.Spring Cloud.Dubbo高并发分布式等教程,一共30G,需要自己领取.传送门:h ...
- Python 爬取猫眼电影《无名之辈》并对其进行数据分析
前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 罗昭成 PS:如有需要Python学习资料的小伙伴可以加点击下方链接 ...
- linux安装IB驱动方法
一.准备 1.Linux操作系统7.6(根据实际情况变更,此处用redhat7.6系统举例) 2.驱动:MLNX_OFED_LINUX-4.6-1.0.1.1-rhel7.6-x86_64.tgz(根 ...
- .NET MVC5简介(二)
MVCApplication---Application_Statr--RegisterRoutes--给RouteCollection添加规则,请求进到网站---X----请求地址被路由按照顺序匹配 ...