python的数据类型和赋值操作
今日内容概括
- python基本数据类型
- 用户交互
- 基本运算符
掌握流程即可编写程序了
puthon基本数据类型
1.列表list eg:list1=[1,'strd',[1,2],1.3] ''' 列表用中括号括起内容 内容可以为,int,float,str或列表 列表内元素之间用逗号,元素是任意数据类型 ''' # 1.索引取值(在列表中第一个元素的位置为0) print(list1[1]) 输出为strd 小练习 list2 = [0,1,2,[0,1,[1,'kevin']]] 要求输出‘kevin’ print(list2[3][2][1]) 2.字典dict ''' 字典用大括号把内容括起 内容元素为K:V组合的键值对,键值对之间用逗号隔开 K表示为对V的描述性质的数据,大部分亲狂下是字符串 V是变量的值,可以是任何数据类型 ''' dict={ 'name':'bbc', 'age':13, height:3.2 } # 字典取值索引K就可以 print(dict['name']) 输出结果为bbc 小练习 dir ={ '1name':'jason', 'age':18, 'hobby':'read', 'addr':{'cou':'CN','city':['芜湖','合肥']} } 要求输出芜湖 print(dir['addr']['city'][0]) 3.布尔值bool 只有两个状态:True,False 用来表示对错 """ 一般情况下存储布尔值的变量习惯使用is开头 is_right = True is_bad = False """ 4.元组tuple ''' 小括号括起内容 元素之间逗号隔开 性质与列表一样,唯一区别为元组元素不可修改 ''' t =(‘jason’,11,22) print(t[0]) 输出为jason 小练习 t=(11,22,[33,44]) t[2][0]=666 print(t[2]) 输出结果为: [666,44] 内部本质: 元组所对应的元素路径无法改变,但内部的元素列表对的路径可以改变
5.集合set ''' 大括号括起内容 元素之间逗号隔开 元素形式基本只能为数字和字符串 ''' 功能:去重,关系运算符,交叉并集 eg: s = {1,2,3,4}
与用户交互
1.输入 input('提示内容') # 用于接收输入数据 ''' python中input接收数据默认为字符串 '''
2.输出 print() #可以输出多个值 print(111,222,333)
3.第二种输入
import sys // sys.stdin 输入各种格式数据 for line in sys.stdin: # 把line的内容按照空格分割 a = line.split() print(int(a[0]) + int(a[1]))
执行结果:
小测试
将数组合并且排序
// 读一行数据,按空格分割 one=sys.stdin.readline().split() // 读一行数据,按空格分割 two=sys.stdin.readline().split() tre=one+two t1=set(tre) gggl=list(t1) gggl.sort() print(gggl)
格式化输出
1.占位符%s eg: info="过%s关,斩六%s" print(info%(5,'将')) 输出:过5关,斩六将 ''' 有几个占位符就要输入几个数据,数据可以是数字,字符 '''
小练习
username = input('username>>>:')
age = input('age>>>:')
print('my name is %s and my age is %s' % (username, age)) '''
输入为jj 和 13
输出为 my name is jj and my age is 13
'''
2.占位符%d 只能输入数字 eg: res = “code is %d,” print(res % 18) 输出为:code is 18 #可以使用%d生成固定位数 print('%04d' % 123) # 输出0123 print('%04d' % 12345) # 输出12345 ''' %04d,表示输出数为4位,空余位用0填补 '''
基本运算符
1.常见运算符 ''' =,+,—,*,/这些是常见的等加减乘除,应该不要解释吧。 ''' **:表示几次方 eg: print(3**2) #3的2次方 输出为9 //:整除 eg: print(3//2)#3整除2 输出为1 2.比较运算符 ''' >,<,>=,<=,==分别是大于,小于,大于等于,小于等于和相等 输出结果为布尔型值 如果是字符串之间的比较,是比较字符对应的ASCII(意义不大) 只能同数据类型之间比较 ''' print(3>=2) #结果为True print(3==2) #结果为False 3.增量赋值 x = 1 x += 1 # 等于x=x+1 x -= 1 # 等于x=x-1
x *= 1 # 等于x=x*1
x /= 1 # 等于x=x/1
x //= 1 # 等于x=x//1
4.交叉赋值
m = 20
n = 10
m,n = n,m
print(n,m)
输出20 10
5.解压赋值
name=['jj','bb','kk']
name1,name2,name3 = name['jj','bb','kk']
print(name1,name2,name3) # 输出jj bb kk
lb=[1,2,3,1,2,4,56,7,8]
a,b,*_,d=lb
print(a,b,d,_) # 输出 1 2 8 [3, 1, 2, 4, 56, 7]
6.链式赋值
x=y=z=3
print(x,y,z) #输出结果为 3 3 3