本站消息

  出租广告位,需要合作请联系站长

  今日名言-想象你自己对困难作出的反应,不是逃避或绕开它们,而是面对它们,同它们打交道,以一种进取的和明智的方式同它们奋斗 。——马克斯威尔·马尔兹

  今日名言-用谅解、宽恕的目光和心理看人、待人。人就会觉得葱笼的世界里,春意盎然,到处充满温暖。——蔡文甫


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

python学习篇(一)基础

发布于2021-07-25 07:03     阅读(959)     评论(0)     点赞(17)     收藏(2)


99python基础学习篇

——————————————————————————

求求你们别学了!!!不想卷

——————————————————————————
-1.循环嵌套
在这里插入图片描述

0.range()函数

# 作者:九九
# 时间:2021/7/23 16:05
'''
备注:range函数
创建了需要遍历才能显示数据
range范围可以理解为 [   )的区间
'''
a=range(10)
'''此时默认起始为0'''
print(a,type(a))
print(list(a))
'''
(a,b,c)
a表示起始位置,b表示结束位置,c表示步长
如果abc缺失
'''
b=range(5)
print(list(b),type(b))
'''此时正常'''
b1=range(5,2)
print(list(b1),type(b1))
'''此时会空范围,不报错'''
b2=range(5,2,2)
print(list(b2),type(b2))
'''此时一样会空范围,不报错'''
a=range(10,20)
print(a,type(a))
print(list(a))
'''正常,步长默认1'''
a=range(10,20,2)
print(a,type(a))
print(list(a))
'''正常'''

运行结果如下:
————————————————————
range(0, 10) <class ‘range’>
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[0, 1, 2, 3, 4] <class ‘range’>
[] <class ‘range’>
[] <class ‘range’>
range(10, 20) <class ‘range’>
[10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
range(10, 20, 2) <class ‘range’>
[10, 12, 14, 16, 18]
————————————————————
1.列表

# 作者:九九
# 时间:2021/7/23 16:09
'''
备注:列表的创建使用[]
'''
a=['aerg','argvf','aergv',555]
print(a,type(a))
print(a[1])
print(a[-3])
'''
由上可知
列表支持索引;
方法一:从0起,正向索引;
方法二:逆向,最末一个为-1,往前再递减1,反向索引;
'''
# 截取列表串的访问
b=['fd',10,'aewc','fefr',55]
print(b[0:3])
print(b[0:-2])
'''正负索引此时可混用'''
# 列表中修改元素
b[1]=20
print(list(b))
# 列表中添加元素;使用append()方法,添加至最后
b.append(500)
print(list(b))
# b[1].append(500);这样添加会报错

# 列表中删除元素;del
del b[0]
print(list(b))

'''
列表运算;‘+’,‘*’
+:列表组合
*:列表复制乘数个
'''
print(list(a),list(b))
print(list(a)+list(b))
c=[1,5]
print(list(c)*5)
'''浑然天成,组合'''
'''同理还可以列表拼接,嵌套'''
d=[2,3]
c+=d
print(list(c))
e=[c+d]
print(list(e))

运行结果如下:
————————————————————
[‘aerg’, ‘argvf’, ‘aergv’, 555] <class ‘list’>
argvf
argvf
[‘fd’, 10, ‘aewc’]
[‘fd’, 10, ‘aewc’]
[‘fd’, 20, ‘aewc’, ‘fefr’, 55]
[‘fd’, 20, ‘aewc’, ‘fefr’, 55, 500]
[20, ‘aewc’, ‘fefr’, 55, 500]
[‘aerg’, ‘argvf’, ‘aergv’, 555] [20, ‘aewc’, ‘fefr’, 55, 500]
[‘aerg’, ‘argvf’, ‘aergv’, 555, 20, ‘aewc’, ‘fefr’, 55, 500]
[1, 5, 1, 5, 1, 5, 1, 5, 1, 5]
[1, 5, 2, 3]
[[1, 5, 2, 3, 2, 3]]
————————————————————
2.元组

# 作者:九九
# 时间:2021/7/23 16:36
'''
备注:元组使用小括号,有时不需要括号也可以
元组类型:tuple
'''
'''使用括号'''
a=('hgfk','eratg','reatg',558)
print(list(a),type(a))
'''不使用括号'''
a1='afew0','aewfg',455
print(list(a1),type(a1))
'''
元组可以创建空元组
但是只有一个元素时,后面需要加,否则会被当成运算符
'''
a2=()
a3=('dfsa',)
print(a2,type(a2))
print(a3,type(a3))

'''元组的索引截取组合'''

a4=('hgfk','eratg','reatg',558,44555,8.85,999)
print(list(a4[0]),type(a4))
print(a4[0],type(a4))
print(list(a4[-7:-2]),type(a4))
'''
元组的索引必须用[],使用()则会报错,抛出如下异常
TypeError: 'tuple' object is not callable
译文:TypeError:“tuple”对象不可调用
'''
'''元组的修改'''
b='sfdhg',45
c='eadg',64,'ergat'
'''
元组不能修改,但可以追加
即:
元组在创建之后,的内存已经确定,不能修改
但是我们可以添加内容在后面,元组的内存指向不发生改变
'''
d=b+c
print(d)
'''
元组中的元素值是不允许删除的
但我们可以使用del语句来删除整个元组
'''
del d
# print(d)
'''
因为删除了d,所以会抛出异常
NameError: name 'd' is not defined
译文:名称错误:未定义名称“d”
'''

运行结果如下:
————————————————————
[‘hgfk’, ‘eratg’, ‘reatg’, 558] <class ‘tuple’>
[‘afew0’, ‘aewfg’, 455] <class ‘tuple’>
() <class ‘tuple’>
(‘dfsa’,) <class ‘tuple’>
[‘h’, ‘g’, ‘f’, ‘k’] <class ‘tuple’>
hgfk <class ‘tuple’>
[‘hgfk’, ‘eratg’, ‘reatg’, 558, 44555] <class ‘tuple’>
(‘sfdhg’, 45, ‘eadg’, 64, ‘ergat’)
————————————————————
3.字典

# 作者:九九
# 时间:2021/7/23 19:45
'''
备注:字典
字典类型:dict
也就是所谓"键值对"
'''
'''
键值对
创建要求;键必须唯一,值可以不唯一
使用{}
'''
a={'name':'张三','age':18,'身高':150}
print(a,type(a))
print(list(a))
'''
综上可知,字典遍历结果是键而非值
访问字典
'''
# print(a[0],type(a))
'''报错,需访问字典里面的键'''
print(a['name'],type(a))
'''修改或添加字典元素'''
b={'name':'张三','age':18,'身高':150}
b['身高']=500
print(b.get('身高'))
'''
修改成功
添加删除属性
'''
b['智商']=200
print(b)
del b['智商']
print(b)
'''
添加删除成功
清空删除字典
'''
b.clear()
print(b)
print(list(b))
del b
# print(b)
'''
清空删除成功
清空是清空所有的键值对
'''

运行结果如下:
————————————————————
{‘name’: ‘张三’, ‘age’: 18, ‘身高’: 150} <class ‘dict’>
[‘name’, ‘age’, ‘身高’]
张三 <class ‘dict’>
500
{‘name’: ‘张三’, ‘age’: 18, ‘身高’: 500, ‘智商’: 200}
{‘name’: ‘张三’, ‘age’: 18, ‘身高’: 500}
{}
[]
————————————————————
4.集合

# 作者:九九
# 时间:2021/7/23 20:22
'''
备注:集合
集合类型set
'''
'''
集合创建两种方式
'''
a={'asdgf','aefce',65,'fads'}
b=set('python')
print(a,b,type(a),type(b))
'''set()方法,如果加入两个元素报错,一个元素显示的元素的组成部分集合,且无序的'''
'''集合的去重特性'''
c={'ffcv','SDAVG','ffcv','eratg',55,5,44,55}
print(c,type(c))
'''综上可知,集合无序,且去重'''
print(55 in c)
print(55 not in c)
'''
亦可用in,not in判断
集合的加减
'''
a1={5,6,7,8,9,10}
c1={1,2,3,4,5}
d=a1-c1
e=c1-a1
print(d,e,type(d))
'''
综上不难看出
集合减就是保留被减数与减数不同的部分
'''

h1={'python'}
h2={'pycharm'}
print(list(h1),h2,type(h1))
# h3=h1+h2
# print(h3,type(h3))
'''集合不允许加法?'''
'''集合添加元素'''
h1.add('ewfa')
print(h1)
h1.update('asgvd','fgzd')
print(h1)
'''明显add加的是整个元素,update是整个元素的组成部分'''
'''移除元素'''
h1.remove('ewfa')
print(h1)
h1.discard('asgvd')
print(h1)
h1.discard('python')
print(h1)
'''remove方法错误会报错,discard有错亦不报错'''

运行结果如下:
————————————————————
{65, ‘fads’, ‘asdgf’, ‘aefce’} {‘t’, ‘p’, ‘o’, ‘h’, ‘y’, ‘n’} <class ‘set’> <class ‘set’>
{‘ffcv’, ‘SDAVG’, ‘eratg’, 5, 55, 44} <class ‘set’>
True
False
{6, 7, 8, 9, 10} {1, 2, 3, 4} <class ‘set’>
[‘python’] {‘pycharm’} <class ‘set’>
{‘ewfa’, ‘python’}
{‘ewfa’, ‘a’, ‘s’, ‘f’, ‘v’, ‘python’, ‘d’, ‘z’, ‘g’}
{‘a’, ‘s’, ‘f’, ‘v’, ‘python’, ‘d’, ‘z’, ‘g’}
{‘a’, ‘s’, ‘f’, ‘v’, ‘python’, ‘d’, ‘z’, ‘g’}
{‘a’, ‘s’, ‘f’, ‘v’, ‘d’, ‘z’, ‘g’}
————————————————————
——至此五基础数据结构已完成,学无止境,百度yyds
附四类型异同表:
在这里插入图片描述

—————————————————————————————

恭喜你,将要开始学习字符串相关知识

希望两三天后开始入门数据分析—————————————————————————————

5.字符串驻留机制

# 作者:九九
# 时间:2021/7/23 22:16
'''
备注:字符串驻留机制
定义方式;单双三引号
优缺点:节约时间内存,不需要频繁的销毁内存
'''
a='111'
b="111"
c='''111'''
print(id(a),id(b),id(c))
'''由此可见,'''

运行结果如下:
————————————————————
1111 1111 1111 三者相同,此处虚构
————————————————————
6.字符串的查询机制

# 作者:九九
# 时间:2021/7/23 22:26
'''
备注:字符串的查询机制
'''
a='python'
print(a.index('y'))
print(a.rindex('y'))
print(a.find('y'))
print(a.rfind('y'))
'''
index()和find()均是查找某元素第一次出现的位置,前者没找到跑异常,后者-1
ridnex()和rfind()均是查找某元素最后一次出现的位置,前者没找到跑异常,后者-1
'''

运行结果如下:
————————————————————
1
1
1
1
————————————————————
7.大小写转换

# 作者:九九
# 时间:2021/7/23 22:31
'''
备注:大小写转换
upper:全部字符转大写
lower:全部字符转小写
swapcase:此字符串所有的大小写反转
capitalize:第一个转大,其他的小写
title:所有的单词第一个大写,其他的小写
'''
a='hello,PYTHON'
print(a.upper(),a.lower(),a.swapcase(),a.capitalize(),a.title())

运行结果如下:
————————————————————
HELLO,PYTHON hello,python HELLO,python Hello,python Hello,Python
————————————————————
8.字符串对齐方式

# 作者:九九
# 时间:2021/7/23 22:39
'''
备注:字符串对齐方式
center():居中对齐,第一个参数指定宽度,第二参数指定填充符,
第二个可选,默认空格,如设置宽度小于实际宽度,则返回原字符串

ljust():左对齐,第一个参数指定宽度,第二参数指定填充符,
第二个可选,默认空格,如设置宽度小于实际宽度,则返回原字符串

rjust():右对齐,第一个参数指定宽度,第二参数指定填充符,
第二个可选,默认空格,如设置宽度小于实际宽度,则返回原字符串

zfill():右对齐,左边用0填充,该方法只接收一个参数,
用于指定字符串的宽度,如设置宽度小于实际宽度,则返回原字符串
'''
a='hello word'
print(a.center(20,'*'))
print(a.ljust(20,'*'))
print(a.rjust(20,'*'))
print(a.zfill(20))

运行结果如下:
————————————————————
hello word
hello word**********
**********hello word
0000000000hello word
————————————————————
9.字符串劈分方法

# 作者:九九
# 时间:2021/7/23 22:51
'''
备注:字符串劈分方法
split():左边开始劈分,默认空格劈分符号,返回列表,
可以用sep()指定劈分符,maxsplist指定最多劈分次数

rsplit():右边开始劈分,默认空格劈分符号,返回列表,
可以用sep()指定劈分符,maxsplist指定最多劈分次数
'''
a='hello word aa'
print(a.split())
a2='hello |word |aa'
print(a2.split(sep='|'))
print(a2.split(sep="|",maxsplit=1))
print(a.rsplit(),a.rsplit(sep='o'))

运行结果如下:
————————————————————
[‘hello’, ‘word’, ‘aa’]
['hello ', 'word ', ‘aa’]
['hello ‘, ‘word |aa’]
[‘hello’, ‘word’, ‘aa’] [‘hell’, ’ w’, ‘rd aa’]
————————————————————
10.判断字符串的操作方法

# 作者:九九
# 时间:2021/7/23 22:58
'''
备注:判断字符串的操作方法
isidentifier():判断字符串是否合法的标识符
isspace():判断字符串是否全部由空白字符组成(回车,换行,水平制表符)
isalpha():判断字符串是否全部由字母组成
isdecimal():判断字符串是否全部由十进制数字组成
isnumeric():判断是否全部由数字组成
isalnum():判断字符串是否全部为数字和字母组成
'''
a='hello,word'
b='hello_word'
c='\t'
d='helloword'
e='4546'
print(a.isidentifier())
print(b.isidentifier())
print(a.isspace())
print(c.isspace())
print(a.isalpha())
print(d.isalpha())
print(a.isdecimal())
print(e.isdecimal())
print(a.isnumeric())
print(e.isnumeric())
print(a.isalnum())
print(e.isalnum())

运行结果如下:
————————————————————
False
True
False
True
False
True
False
True
False
True
False
True
————————————————————
11.字符串的替换与合并

# 作者:九九
# 时间:2021/7/23 23:09
'''
备注:字符串的替换与合并
'''
a='hello python|'
print(a.replace('python','java'))
a1=a*6
print(a1)
print(a1.replace('python','java'))
print(a1.replace('python','java',3))
'''综上,replace('被替换','替换物',最大的次数),最大次数不设置默认全部替换'''
a2=['agagr','18','qgefv']
print('*'.join(a2))
'''只有元组和集合的可以使用join()'''

运行结果如下:
————————————————————
hello java|
hello python|hello python|hello python|hello python|hello python|hello python|
hello java|hello java|hello java|hello java|hello java|hello java|
hello java|hello java|hello java|hello python|hello python|hello python|
agagr18qgefv
————————————————————
睡觉睡觉!!!23:34
在这里插入图片描述
12.字符串的比较

# 作者:九九
# 时间:2021/7/24 10:18
'''
备注:字符串的比较
'''
a='apple'
b='apple'
c='app'
d='b'
print(a>b)
print(a>c)0
print(a>d)
print(ord('a'),ord('b'),ord('张'))
print(chr(97),chr(24352))
'''
ord():获取ASCCLL码
==与is的区别
==比较的是value
is比较的是id
'''
print(a==b)
print(a is  b)

运行结果如下:
————————————————————
False
True
False
97 98 24352
a 张
True
True
————————————————————
13.字符串的切片操作

# 作者:九九
# 时间:2021/7/24 14:12
'''
备注:字符串的切片操作
字符串不允许增删改查,但是可以切片产生一个新的序列
'''
a='python'
b=a[0:3]
print(a,id(a))
print(b,id(b))
c=a+b
print(c,id(c))
d=a*3
print(d)
e=d[0:6:1]
'''三位;起止步长'''
print(e)

运行结果如下:
————————————————————
python 2153860277360
pyt 2153860562672
pythonpyt 2153860562800
pythonpythonpython
python
————————————————————
14.格式化字符串

# 作者:九九
# 时间:2021/7/24 14:41
'''
备注:格式化字符串
'''
'''
第一种:%s,%d,%f
第二种:{}
第三种:f-string
'''
name='张三'
age=20
print('我叫%s,今年%d岁'% (name,age))
print('我叫{0},今年{1}岁'.format(name,age))
print(f'我叫{name},今年{age}岁')

运行结果如下:
————————————————————
我叫张三,今年20岁
我叫张三,今年20岁
我叫张三,今年20岁
————————————————————
15.编码与解码

# 作者:九九
# 时间:2021/7/24 22:43
'''
备注:编码与解码
GBK中文占两个字节
UTF-8中文占三个字节
'''
a='逝者如斯夫,不舍昼夜'
print(a.encode(encoding='GBK'))
print(a.encode(encoding='UTF-8'))
'''编码'''
b=a.encode(encoding='UTF-8')
'''解码'''
print(b.decode(encoding='UTF-8'))

运行结果如下:
————————————————————
……
省略此三行
……
逝者如斯夫,不舍昼夜
——————————————————————————————
至此基础的数据类型和字符串操作学习基本结束,
奈何学无止境,有问题再百度!函数篇再会!——2021/7/24 22:56

—————————————————————————————————————



所属网站分类: 技术文章 > 博客

作者:你爱不爱我

链接:http://www.pythonpdf.com/blog/article/560/581d3f6357610e9df5e2/

来源:编程知识网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

17 0
收藏该文
已收藏

评论内容:(最多支持255个字符)