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的更多相关文章
随机推荐
- 201871010113-刘兴瑞《面向对象程序设计(java)》第八周学习总结
项目 内容 这个作业属于哪个课程 <任课教师博客主页链接> https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 <作业链接地址>htt ...
- centos7删除MariaDB怎么操作
有时我们要在centos上安装一些组件,需要先把原来的数据库删除,比如MariaDB,不然就出现冲突错误,那么如何删除数据库呢?首先查询所安装的MariaDB组件: [root@localhost l ...
- np.unique( )的用法
该函数是去除数组中的重复数字,并进行排序之后输出. 换句话,我想从一个图片选取 1000个不同的点,随机采点经常遇到相同的点,造成重复.np.unique就是用来解决这个问题
- 《2018:skymind.ai 发布了一份非常全面的开源数据集》
这是一份非常全面的开源数据集,你,真的不想要吗? 近期,skymind.ai 发布了一份非常全面的开源数据集.内容包括生物识别.自然图像以及深度学习图像等数据集,现机器之心将其整理如下:(内附链接 ...
- Python - __name__=='__main__'是干啥的,以及python -m与python的区别
1. __name__=='__main__'是干啥的 先看例子,准备a.py和b.py放在同一个文件夹中 vi a.py # coding: utf-8 print("i am just ...
- WPF之动态加载曲线
首先说一下思路: 先创建一个控件(其实就是一个canvas),在canvas里面生成一条线,给这条线绑定一个PointCollection,在主界面中用一个定时器改变这个PointCollection ...
- Redis设置密码,保护数据安全
1.设置密码方法 在 redis.conf 的配置文件中修改参数 requirepass 的值为需要设置的密码, 保存配置文件后,重启Redis就可以. 建议 设置比较复杂和长的密码,防止被暴力破解. ...
- Winform中怎样获取项目图片资源并转换为Image对象
场景 DevExpress的TreeList怎样给树节点设置图标: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10274554 ...
- 关于 SONY WF1000XM3 在 Windows 10 下蓝牙连接只有 Handfree 没有 Stereo 模式
应该是驱动适配问题,目前粗暴的解决方案貌似下载安装一个 Intel APTX 驱动就可以了: https://www.dell.com/support/home/cn/zh/cndhs1/driver ...
- Android Studio当中的创建新方法的快捷键该如何使用?
当有红线出现的时候,我们的代码并没有编译出错,则需要输入alt+enter则可以得到相应的神奇效果了.这个方法我竟然今天才知道,也真是丢脸了.比如说我们书写了一个新的没有创建的方法,我们直接输入alt ...