python入门(二)
1.python的注释
什么是注释:对代码的解释或者评论,注释仅仅是给人看的,python不识别
注释的分类:
(1)# 单行注释
(2)三引号(可以是三个单也可以是三个双)
''' """
多行注释 多行注释
''' """
2.与用户的交互
输入:
(1)python3 中的输入
关键字:input()
python3中的input获取的用户输入统一全部存成字符串类型
(2)python2中的输入
input() 需要你人为的告诉input你输入的是什么数据类型

raw_input() python2中的raw_input会将用户输入的数据统一也存为字符串形式

总结:用户输入的统一都是字符串形式
代码一旦改动,必须重新执行一下所改动的py文件
不然的话,程序执行的还是你未改动之前的代码!
3.格式化输出
(1)input自带换行 一个print独占一行
(2)谁先来谁先坐 个数必须一致不能多也不能少
(3)%s可以给任意数据类型占位
(4)%d只能给数字占位
ps:print('%08d' %123) # 整数是8位,传入的数不够八位的话默认用0补全,超出8位,是多少就是多少
# my name is 用户输入的用户名 my age is 用户输入的年龄 name = input('username>>>:') age = input('age>>>:') age1 = 18 print(name,age) print(name) print(age) # input自带换行 一个print独占一行 print('my name is',name,'my age is',age) # 占位符 %s %d print('my name is %s my age is %s'%(name,age)) print('my name is %s my age is %s'%(age,name)) # 谁先来谁先坐 个数必须一致不能多也不能少 print('my name is %s my age is %d'%(name,age1)) # %d只能给数字占位 print('my name is %s my age is %s'%('jason',[1,2,3,4,5])) # %d只能给数字占位 %s可以给任意数据类型占位 # 补充 print('%08d'%123) # 整数是8位,传入的数不够八位的话默认用0补全,超出8位,是多少就是多少
4.python基本数据类型
(1)int 整型
作用:年龄,qq号,手机号,身份证号不包括x的
(2)float 浮点型
作用:体重、身高、薪资
(3)复数
a.real 查看实部
a.imag 查看虚部
ps:只有python2中有长整型的概念,python3中只有整型
# 整型 # 作用:年龄,qq号,手机号,身份证号不包括X的 # 定义 age = 18 # 内部对应的本质 age = int(18) print(type(age)) # 浮点型 # 作用:体重,身高 ,薪资 # 定义 salary = 1.11 # salary = float(1.11) salary1 = float(3.1111) print(type(salary)) print(type(salary1)) # 复数 """ >>> a = 1-2j >>> type(a) <type 'complex'> >>> >>> a.real 查看实部 1.0 >>> a.imag 查看虚部 -2.0 """ # 只有python2中才有长整型的概念,python3里面只有整型
(4)str 字符串
作用:存描述性的信息 比如你的个人简介,他人评价。。。
单引号、双引号、多引号
三种定义是考虑到用户在输入的文本中需要用到引号
ps:python中的字符串支持加和乘操作
# 字符串 # 作用:存描述性的信息 比如你的个人简介 他人评价... # 定义 # 第一种 单引号 s1 = '我是字符串,jason说:"天下无敌"' # s1 = str('我是字符串') print(type(s1)) # 第二种 双引号 s2 = "我是字符串" print(type(s2)) # 第三种 三引号(可以是单 也可以是双 但是不能混合使用) 它还可以用来做注释 s3 = ''' 我是字符串 并且可以写多行 ''' s4 = """ 我是字符串 并且可以写多行 """ print(type(s3)) print(type(s4)) # 之所以有三种定义方式 是考虑到用户在输入的文本中也需要用到引号 s5 = 'hello' s6 = 'world' # print(s5+s6) print(s5*10) # python中的字符串支持加和乘操作
(5)list 列表
作用:能够存储多个数据,并且可以方便的取出一条或多条
定义:[ ]内部通过逗号分隔开多个数据(元素),并且这多个可以是任意数据类型
ps:在it行业,通常数数都是从0开始的>>>:索引
# 列表 # 作用:能够存储多个数据 并且可以方便的取出一条或多条 # 定义:[]内部通过逗号分隔开多个数据(元素) 并且这多个可以是任意的数据类型 l = [123,3.1,'dbj',[11,22]] print(type(l)) print(l[1]) print(l[2]) print(l[3][0]) # [11,22][0] # 在it行业 通常数数都是从0开始的>>>:索引 # l1=['a','b',['c',['d',]]] print(l1[2][1][0]) students_info=[ ['egon',18,['play',]], ['alex',18,['play','sleep']] ] l1 = students_info[1] l2 = l1[2] res = l2[1] print(res) print(students_info[1][2][1])
(6)dict 字典
作用:能够存储多组数据,存取的数据有对应的描述
定义:大括号内存多个元素,元素的格式key:value形式存储,键值对与键值对之间逗号隔开
ps:
1.key通常是描述value的描述性信息,key通常存的就是字符串
2.value就是描述性信息对应的真实的数据,value可以是任意类型
3.字典是无序的
4.字典暴露给用户可以操作的部分只有key,无法直接获取到value
5.字典可以代表一个地球、国家、省份。。。
info = ['jason',18,['read','run'],['kevin','egon','tank'],'hand'] print(info[0]) print(info[2][1]) # 字典(******) # 作用:能够存储多组数据,存取的数据有对应的描述 # 定义:大括号内存多个元素,元素的格式key:value形式存储,键值对与键值对之间逗号隔开 # key通常是描述value的描述性信息,key通常存的就是字符串 # value就是描述性信息对应的真实的数据,value可以是任意类型 info = { 'name':'jason', 'age':18, 'hobby':['妹纸','钞票'] } # info = dict({'name':'jason'}) # 强调 字典是无序的 # 字典暴露给用户可以操作的部分只有key 无法直接获取到value print(info['name']) info1 = { 'name':'jason', 'age':18, 'hobby':['妹纸','钞票'] # value可以是任意类型 } # info = dict({'name':'jason'}) emp_info={ 'name':'egon', 'age':18, 'sex':'male', 'company_info':{ 'cname':'oldboy', 'emp_count':200, 'addr':'SH' } } d1 = emp_info['company_info'] print(d1) res = d1['addr'] print(res) print(emp_info['company_info']['addr']) # 字典可以表示 一个省市 一个国家 甚至一个地球 .... china = {'country_name':{'China':{ '北京':{ '朝阳区':{ }, '海淀区':{}, '昌平区':{}, }, '上海':{}, '深圳':{}, }}}
(7)bool 布尔值
作用:标识事物的对错(可行性),通过True False来判断事物的真假 对错 是否可行
ps:
1.单个等号是赋值 两个等号是比较 比较的仅仅是值是否相等
2.is比较的是两个变量对应的id是否相等
3.id相等的情况下 值一定相等
4.id不相等的情况下 值有可能相等
# 布尔值 # 作用:标识事物的对错(可行性) 通过True False来判断事物的真假 对错 是否可行 # 定义: tag = True # tag = bool(True) tag1 = False print( 1 > 0) x = 10 y = 20 print(x == y) # 单个等号是赋值 两个等号是比较 比较的仅仅是值是否相等 print(x is y) # 比较的是两个变量对应的id是否相等 """ id相等的情况下 值一定相等 id不相等的情况下,值有可能相等 """
5.运算符
基本运算符
赋值:
(1)链式赋值
(2)交叉赋值
(3)解压赋值:注意事项:前面变量的个数与后面的元素个数必须相等
# 运算符 print(10 / 3) #结果保留小数部分 print(10 // 3) # 只保留整数部分 print(10 % 3) # 取余数 print(2**3) # 2的三次方 # python对数字的敏感度不是很高(存储的数字不精确) # 比较运算:== != > < >= <= # 了解知识: # 数字之间可以互相比较大小 print(10 > 3) print(10 > 3.1) print(10 != 9) # 不等于 # 了解 a = 'hello' b = 'z' print(b > a) # A-Z a-z z对应的数字最大 A对应的数字最小 # 赋值运算 xxx = 18 # 增量运算 xxx += 1 # xxx = xxx + 1 xxx *= 2 # xxx = xxx*2 xxx -= 10 # xxx = xxx - 10 print(xxx) # 链式赋值 x = 100 y = 100 z = 100 a = 100 b = a c = b x = y = z = 8000 m = 80 n = 70 # 第一种 o = m m = n n = o print(m,n) # 交叉赋值 m,n = n,m print(m,n) # 解压赋值 l = [1,2,3,2,3,4,5,6,7,6,4,56,7,6,5,3,3,4,4] a = l[0] b = l[1] c = l[2] d = l[3] a,b,c,d, = l # 前面的变量个数与后面的元素个数必须相等 a,_,_,d = l a,*_,d = l print(a,d) print(_)
逻辑运算符
(1)与 and两边必须同时成立,结果才成立
(2)或 or只要有一边成立则结果成立,后面的无需查看
(3)非 not结果取反
# 与 或 非 # and or not print( 1 > 0 and 3 > 4) # and两边必须同时成立 结果才成立 print( 1 > 0 or 1 > 0 and 3 > 4) # or只要有一边成立 立即成立 后面的无需再看 print(not 1 > 3) # 结果取反 age=20 sex='female' print(age > 18 and age < 26 and sex == 'female' and 1 > 3) print(1 > 3 or 2 > 4 or 'x' == 'y' or 1==1)

浙公网安备 33010602011771号