數據類型
- number(int,float,bool,complex)
- string
- tuple 元組
- list 列表
- set 集合
- dict 字典
number
a = 1 #int
a= 1.2 #float
#bool
a = True #True=1,False=0
print(int(a),type(a))
x=43
ch='A' #A=64,b=98
y=1
print(x>y and ch<'b' and y)
#結果:1
#實數和虛數
a = complex(5.6,8)
a = 1.2 + 3.4j
print(a,type(a))
print(a.real) #獲取實數部分
print(a.imag) #獲取虛數部分
#1.把一個值賦值給多個變量
a=b=c=1
print(a,b,c)
#2.把多個值賦值給多個變量
a,b,c=1.2,3,True
print(a,b,c)
string
#str(用單引號或者雙引號括起來的字符)
s="helloworld"
print(s,type(s))
#字符串的取值和切片,取前不取后
print(s[0],s[1],s[-1],s[-2],s[2:4],s[2:],s[:6],s[3:-3])
#結果:h e d l ll lloworld hellow lowo
#字符串相關方法
s="Hello,World"
print(s.upper()) #大寫
print(s.lower()) #小寫
print(s.capitalize()) #首字母大寫
print(s.split(",")) #通過字符切割字符串
print(s.replace("W","S")) #替換字符串
print(s.count("o")) #計算一個字符出現的次數
#內置函數方法
print(s,type(s),max(s),min(s),len(s),chr(97),ord('a'))
#字符串的運算
ss="www"
sss=123
print(s+ss) #拼接(只能相同數據類型拼接)
print(ss+sss) #報錯。數據類型不同
print(s*2) #出現N次
#字符串的格式化
print("hello world%s"%"www") #%s是字符串占位符
print("hello world%10s"%"www") #占10個字符的位置,多出來用空格填充
print("hello world%d"%123) #%d是數字占位符
# import time
print("hello world%s"%time.time())
tuple元組
1、特點:是不能被更改,使用()定義
tup = (82,42,60,32,6,19,42)
tup1 = (100,200)
2、打印、取值、切片
#打印和取值:
print(tup,type(tup),max(tup),min(tup),len(tup))
#切片:
print(tup[0],tup[1],tup[-1],tup[-2],tup[2:4],tup[2:],tup[:4],tup[2,-2])
3、與元組相關的方法
#判斷一個元素在元組中出現的次數
tup.count(42)
#判斷一個元素在元組中第一次出現的下標
tup.index(42)
4、元組的運算
print(tup+tup1)
print(tup*2)
list列表
1、特點:有序的,使用[]定義
lis=[82,42,60,32,6]
lis2=[100,200,32]
2、打印、取值、切片(和str一樣)
#打印和取值:
print(lis,type(lis),max(lis),min(lis),len(lis))
#切片:
print(lis[0],lis[1],lis[-1],lis[-2],lis[2:4],lis[2:],lis[:4],lis[2:-3])
3、與list相關的方法
#在list尾部追加一個元素
lis.append(100);print(lis)
#在下標為3的位置插入一個元素
lis.insert(3,200);print(lis)
#根據下標刪除
lis.pop(2);print(lis)
#根據值刪除
lis.remove(60);print(lis)
#從小到大排列
lis.sort();print(lis)
#反轉
lis.reverse;print(lis)
#獲得一個元素出現的次數
print(lis.count(42))
#獲得一個元素第1次出現的下標
print(lis.index(42))
#清空
lis.clear();print(lis)
#復制
ls=lis.copy;print(ls)
#繼承
lis.extend(lis2);print(lis)
#結果:[82, 42, 60, 32, 6, 100, 200, 32]
4、運算
print(lis+lis2)
print(lis2*2)
set集合
1、特點:無序的,不可重復,使用{}定義
se = {82,42,60,32,6,19,42}
se1 = {100,200}
s = set() #創建空的集合
#不能用s={},使用s={}是創建空的字典
2、打印、取值、切片
#打印:
print(se,type(se))
#取值和切片:NO
3、與set相關的方法
#根據值增加
se.add(100);print(se)
#根據值刪除
se.remove(63);print(se)
#復制
new_se=se.copy();print(new_se)
#清空
se.clear();print(se)
#修改(繼承)
se.update(sel);print(se)
4、運算
- se&se1 交集
- se|se1 並集
- se-se1 減集
- se^se1 異或
dict字典
1、特點和定義
特點:保存的是鍵值對。鍵不能重復,值可以重復。使用{}定義。
#定義:
dic = {"a":"路飛","b":"艾斯","c":"薩博"}
注意:列表list不能作為鍵
2、打印和切片
#打印:
print(dic,type(dic),max(dic),min(dic),len(dic))
#切片:NO
#但是可以通過鍵來增、刪、改、查(取值)
dic["a"]="喬巴"
del dic[10];
dic[5]="卡普"
print(dic[30])
kvps={'1':1,'2':2}
thecopy=kvps
kvps['1']=5
sum=kvps['1']+thecopy['1']
print(sum)
#結果:10
#分析:kvps和thecopy兩個變量指向內存中棧的地址
3、與dict相關的方法。
dic={10:"鳴人",5:"佐助","a":"w"}
dic2={"a":"b"}
#獲得所有的key
ls=dic.keys();print(ls)
#獲得所有的value
ls=dic.values;print(ls)
#通過key獲取值
ls=dic.get(10);print(ls)
#清空
dic.clear();print(dic)
#復制
ls=dic.copy();print(ls)
#修改或繼承
dic.update(dic2);print(dic)
#通過鍵刪除
ls=[1,2,3]
#把所有的鍵統一成一個值
w=dic.fromkeys(ls,"www");print(w)
內置函數
type():查看數據類型
print();max();min();len();chr();ord();
int();float();str();tuple();list();set();dict();
數據類型轉換
1.自動轉換
print(1+True);
2.強制轉換
d=(12,4412,51,251,251)
d=list(tuple(set(d)))
print(d)
Python中的輸入和輸出
1、輸入:input("說明")
#任意的輸入5個數字,按從大到小排序
inp1=input("請輸入第一個數字:")
inp2=input("請輸入第二個數字:")
inp3=input("請輸入第三個數字:")
inp4=input("請輸入第四個數字:")
inp5=input("請輸入第五個數字:")
lis=[inp1,inp2,inp3,inp4,inp5]
lis.sort()
lis.reverse()
print(lis)
2、輸出:print("內容")
print("hello world%s"%"www")
print("hello world{}".format([1,2,3]))
print("hello{1} world{0}".format("www","sss"))
print("hello{name} world{age}".format(name="zhangsan",age=18))
lis=["apple","balana","orange"]
w="_".join(lis)
print(w)