一、基本数据类型:
1.数值型:
(1) int->整型
n1 = 10
print(n1)
print(type(n1))
(2) float->浮点型(小数)
n2 = 10.1
print(n2)
print(type(n2)
(3) complex->复数
2.字符串:str->
单引号'abc'或者双引号"abc"【普通字符串的定义】
多行字符串【跟多行注释有点类似】
s1 = 'shuaige'
s2 = "meinv"
print(s1)
print(s2)
print(type(s1))
print(type(s2))
s3 = '''
帅哥多 美女更多
'''
print(s3)
print(type(s3))
二、注释
(1) #单行注释
(2) '''
多行注释1
'''
"""
多行注释2
"""
(3) 运算符:
算数运算符:+、-、*、/、%、**、//
n1 = 10
n2 = 20
print(n1 + n2)
比较运算符:==、<、>、!=、<=、>=
print(n1 == n2 )
print(n1 <= n2 )
赋值运算符:=、+=、-=、/=、%=、//=、**=
print(n1)
print(n2)
n2 +=n1
print("n1=",n1,'n2=',n2)
逻辑运算符:and、or、not
n1 = True
n2 = False
print(n1 or n2 )
print(not n1 )
成员运算符:in、not in
s1 = "hello"
print('e' in s1)
print('x' not in s1)
三、流程控制:
1.分支结构:
if:if_stmt ::= "if"assignment_expression ":" suite ("elif" assignment_expression ":" suite)* ["else" ":" suite]
eg:score = float(input("请输入一个数字:"))
if(score<60):
print("不及格")
elif (score<80):
print("良")
elif (score <=100):
print("优秀")
else:
print("输入有误")
2.循环:
(1) for:for_stmt ::= "for" target_list "in" expression_list ":" suite ["else" ":" suite]
eg:
l1 = [1,2,3,4,"abc","456"]
for el in l1 :
print(el)
else:
print("xxx")
(2) while:while_stmt ::= "while" assignment_expression ":" suite ["else" ":" suite]
eg:
flag = float(input("请输入一个数字:"))
while(flag == 1):
score = float(input("请输入一个数字:"))
if (score < 60):
print("不及格")
elif (score < 80):
print("良")
elif (score <= 100):
print("优秀")
else:
print("输入有误")
else:
print("退出while")
3.break continue:
L1= [1,2,3,4,5]
for el in L1:
if(el == 3):
# break
continue
print(el)
else:
print(el)
四、类型转换:n1 = 1
print(n1)
#print(n1+"1")
print(n1,"1")
print(str(n1) + "1")
print(int("123") + 20)
五、常见的数据结构:
1.str:
(1) 常用的函数
s1="meinv"
s2="Shuaige"
print(len(s1))
print(s1.lower())
print(s2.upper())
s3= "abcDDD"
s3= s3.replace('D',"d")
s4= "a,a,a,b,b,b"
L1 = s6.split(",")
print(L1)
(2) 字符串插值
name = "xiaoxiao"
age = 40
print(name,age)
print("name is : "+name,"age is : ",age)
print(f"name is {name} , age is {age}")
print("name is {0} , age is {1}".format(name, age))
2.集合:
(1) List:列表。有序的,数据可重复
L1 = [1,2,3,4,"abc"]
# 取值
print(L1[0])
print(L1[0:3]) #左闭右开
print(L1[-1])
# 设置值
L1[0]="hello"
print(L1)
# 添加值
L1.append(1)
L1.append("world")
L1.append(1)
print(L1)
# 移除值
L1.pop(0)
print(L1)
L1.remove("xuanxuan")
print(L1)
del L1[0]
print(L1)
#函数
print(len(L1))
print(L1.__len__())
L2 = [1,2,3,4,1,6,5]
L2.sort()
print(L2)
L2.sort(reverse=True)
print(L2)
l3 = sorted(L2,reverse=False)
print(l3)
(2) Set:集合。无序的,数据不可重复
s1 = {1,1,1,2,3,4,5,"abc"}
print(s1 )
# 添加元素
s1.add(10)
s1.add("zs")
print(s1)
s1.remove(10)
print(s1)
s1.pop()
s1.pop()
print(s1)
# 交 并
print(s1 & {2, 3, 4})
print(s1 | {2, 3, 4})
(3) tuple:元组。(元组使用小括号,元组内元素不能被修改,列表使用方括号)
t1 =(1,1,1,12,3,"meinv","shuaige","weixin")
print(t1)
print(type(t1))
# 取值
print(t1[0])
print(t1[0:3])
# 添加值
t2 = t1.__add__((1,2,3))
print(t2)
print(t1 + (1, 2, 3))
# 函数
print(len(t1))
n = t1.index("shuaige")
print(n)
m = t1.count(1)
print(m)
(4) dict:字典。kv
d = {"name":"xiaoxiao","age":21,"city":"北京"}
print(d)
print(type(d))
# 取值
print(d.get("name"))
print(d.get("age"))
print(d.get("city"))
# 添加kv
d["gender"]='男'
print(d)
d["age"]=18
print(d)
d.pop("name")
print(d)
# 函数
print(d.items())
print(d.keys())
print(d.values())
for k,v in d.items():
print(f"key is {k} , value is {v}")
六、集合常用函数:
1.enum:返回list 下标+value
l1 = [1,2,3,4]
for index,value in enumerate(l1):
print(index,value)
2.zip:将多个list匹配形成一个list
l1 = ["name","age","gender"]
l2 = ["zs",21,"女"]
print(zip(l1, l2))
print(list(zip(l1, l2)))
for k,v in list(zip(l1, l2)):
print("key is {0}, value is {1}".format(k,v))
3.reversed:对元素进行降序
print(range(1, 10))
for i in reversed(range(1, 10, 2)):
print(i)
七、推导式:
1.list推导式:
[x for x in iterable]
l1 = []
for el in range(5):
l1.append(el)
print(l1)
l2 = [el for el in range(5)]
print(l2)
2.set推导式:
s1 = {el for el in range(10) if el > 4}
print(s1)
3.字典推导式:
d1 = {key:key*2 for key in range(10) if key < 3}
print(d1)