当前位置 : 主页 > 编程语言 > python >

Python基础 1.1数值类型 序列类型

来源:互联网 收集:自由互联 发布时间:2021-06-25
1.1数值类型 1.常用运算符: + - * / %(取余) //(取整数) **(次方) 2.整数与小数的运算 返回float 3.decimal的运算 更精确一些 4.布尔型的计算 True False 5.复数演示 6.了解math模块 import m

1.1数值类型

1.常用运算符:

  +  -  *  /  %(取余)   //(取整数)  **(次方)

2.整数与小数的运算 返回float

3.decimal的运算 更精确一些

4.布尔型的计算 True False

5.复数演示

6.了解math模块 import math

7.Decimal

 from decimal import Decimal
Decimal(10)/Decimal(3)
Decimal(‘10.5‘)/Decimal(3)
print(type())
?

1.2序列类型(列表,元组)

1.2.1列表list (可以被更改) 可嵌套

?
a=[ 1,2,3,4,5,6,7,8,9,20.0,30.0,(100,200,300),[400,500,600]]
print(a[2])
print(a[2:3])           #取左不取右   右边不写则是取到最右边
print(a[0:20:2])
print(a[-1])
###########             切片取出的是列表
print(a[2:3][0])         取出的是字符串
###########

b1=‘20180910‘
print (‘year=‘,(b1[0:4]))
print (‘month=‘,(b1[4:6]))
print ("day=",(b1[6:]))
?

1.2.2元组tuple (不可以被更改)元组和列表取值是差不多的

a=(100,200,300)    
?
b = list(a)       元组转成列表

1.3列表方法

  • 增:

    append 到最后的位置 insert 插入到某个位置 extend 扩展 两个列表融合到一个列表

  • 删:

    pop 通过索引删除 remove 通过内容删除 删除出现的第一个 clear 清空整个列表

  • 改:

    li[0] = ‘ list ‘

  • 查:

    index 查找内容的索引 出现的第一个 count 查找元素个数

  • 其他方法:

    copy 浅复制 reverse 列表反转 sort 排序

?
my_list = [‘Tom‘,‘Wang‘,‘du‘]
my_list.append( ‘hahahaha‘)
my_list.insert(1,‘hansha‘)
my_list2=[15,20]
my_list.extend(my_list,my_list2)
my_list.pop(2)
my_list.remove(‘Tom‘)
my_list[1]=‘wangyangyang‘
print(my_list.index(‘du‘))
print(my_list.count(‘du‘))

my_list3=my_list.copy()
my_list.reverse()
my_list.sort()
?
?

1.4元组方法

  • 查:

    index 查找内容的索引 出现的第一个 count 查找元素个数

  • 元组间接变化:

?
tuple_a=(1,2,3,‘ahsd‘,555)

list_a=list(tuple_a)
list_a.append( ‘hahahaha‘)
tuple_a=tuple(list_a)
?
?

1.5字符串方法 (可以索引 可以切片)

  • count 计算某元素出现的次数 find 查找内容的索引 出现的第一个 找不到不会报错 index 查找内容的索引 出现的第一个 找不到报错 isdigit 是否只有数字 isalpha 是否只有英文 endswith 是否以。。结尾 startswith 是否以。。开头 islower 是否是小写 isupper 是否是大写

  • 改 (生成一个新的字符串)

    upper 变成大写 lower 变成小写 strip (lstrip,rstrip) 去除字符串左右两边字符 capitalize title split 根据某个条件分割

  • replace 替换

  • 字符串拼接

     

?
my_str=‘asdada fjh afjk ahk jfhaf ha h‘
new_str=my_str.strip()
new_str=my_str.split(‘/‘)
new_str=my_str.replace(‘asd‘,‘666‘)

?
?

1.6字符串转义

字符前面加上 \ ,字符就不再表示字符本身的意思,表示ASCII码中 不能显示字符,常见有下:

\n 换行

\t 水平制表符
?
\b 退格
?
\r 回车,当前位置移到本行开头
?
\\ 代表反斜杠 \
?
\’ 代表一个单引号,同样的 “   等符号也可以这么输出
?
\0 代表一个空字符
?
\a 系统提示音

在python中如果要去掉字符串的转义,只需要在字符串前面加上 r

r‘abc\tabc‘

1.7字符串编码

?
my_str=r‘东西‘
a=my_str.encode(‘utf-8‘)   转成2进制数据
b=a.decode(‘utf-8‘)        2进制转成字符串
?

1.7字符串拼接

1.使用 +

str1 + str2 + str3

2.格式化字符串

‘ %s %s %s ‘ %(str1,str2,str3)

3.使用join

’字符’.join([str1, str2, str3])

4.使用 format

‘ {} {} {} ‘.format(obj1,obj2,obj3)
?
‘ {0} {1} {2} ‘.format(obj1,obj2,obj3)
?
‘ {1} {0} {2} ‘.format(obj1,obj2,obj3)
?
‘ {n0} {n1} {n2} ‘.format(n1=obj1,n0=obj2,n2=obj3)
 
my_str=‘南北老师hello我是杜育非‘
a=my_str[0:4]
b=my_str[4:9]
c=my_str[9:]
print(b+‘,‘+a+‘,‘+c+‘.‘)
str_1=‘%s,%s,%s,‘%(b,a,c)
print(str_1)
str_2=(‘,‘.join([b,a,c]))+‘.‘
print(str_2)
str_3=‘{},{},{}.‘
print(str_3.format(b,a,c))
?
?
?

1.8字符串格式化

1.8.1 %s %d %f 等等

  • 了解:

    %d %数字 %f %浮点数 %c %ASCII字符 %o %8进制 %x %16进制 %e %科学计数法

    ‘ %-6.3f ‘ % 10.3 左对齐 ‘ %+6.3f‘ % 10.3 显示正 ‘ %5s ‘ % ‘ab‘ 格式化长度 可用来对齐

  • 掌握:

    print(‘%s’ %’123’) 字符串拼接 print(‘%r’ %’123’) 原始话输出

1.8.2 format 了解:

‘{:.2f}‘.format(12.333)         保留小数点后两位
‘{a:.2f}‘.format(a=12.333)
?
‘{:.2%}‘.format(0.333)         百分比格式
?
‘{:x}‘.format(20)               转换成十六进制
?
‘{:o}‘.format(20)               转换成八进制    
                              进制转换的时候用{0:进制}
‘ {a:<10}’.format(a=12.3,b=13.44)     左对齐,长度为10
‘ {a:0<10}‘.format(a=12.3,b=13.44)   数字补x (填充右边, 宽度为4)
‘ {a:0>10}’.format(a=12.3,b=13.44)   右对齐...
‘ {a:0^10}‘.format(a=12.3,b=13.44)   两边对齐...
?
‘{{ hello {0} }}‘.format(‘python’) 转义{和}符号
?
‘ name=‘a du ,data=‘18‘  
print(f‘hello,{name},i am {data}‘) ‘

 

1.9 深浅复制

1.浅复制

?
a=[1,2,3,4]
b=a.copy
a[0]=100

print(a)
print(b)

print(id(a))
print(id(b))
?
?
?

 

2.深复制

?
import copy
my_list=[1,2,[3,4]]
a=my_list
b=copy.deepcopy(my_list)
my_list[2][0]=100
print(my_list)
print(a)
print(b)
print(id(my_list))
print(id(a))
print(id(b))
?
?
?
网友评论