Python自学笔记

一.Python2和Python的第一个区别:Python2的默认编码是ASCII码,所以不支持中文显示,Python3的默认编码是UTF-8,所以中文是可以展示的,想要在Python2上处理中文,应在程序的最开始的地方添加“#-- encoding:utf-8 --”来讲编码的形式进行转换。
二.Python的基本数据类型有三种:
int(整型),整型就是1,2,3,4,可以进行数学运算,
str(字符串),凡是引号引起来的都是字符串,可以进行加法,就是拼接字符串,字符串乘以数字就是该字符串重复多少遍。
bool(布尔类型),True和False(首字母大写,注意与java区分)
三.输入的input,输入的都是字符串
四,流程控制
if 条件(布尔类型的条件): 结果
if 条件 :
结果
else :
结果

	if 条件 : 
				结果
	elif 条件:
				结果
while 条件 :
		循环体, 跳出循环的三种情况:改变条件,break,continue

四.格式化输出

#格式化
name = input('请输入名字:')
age = input('请输入年龄:')
job = input('请输入工作:')
hobble = input('请输入爱好:')
msg = '''
------------info of %s------------
Name : %s #字符串
Age : %d  #数字
Job : %s
Hobble : %s
------------ end --------------- 
'''%(name,name,int(age),job,hobble)
print(msg)

TIP:因为%是作为转义字符的,所以。想要单纯的使用%,而不作为转义字符时,需要再加上一个%,即 %% (代码体现)= %(实际输出)

五。while…else…

count = 0
while count <= 5:
    count += 1
    if count == 3:continue    #如果不被打断,才可以执行else中的代码,打断是指break打断,continue和pass都不会打断while循环
    print("Loop",count)
else:
    print("循环正常被执行了")   
print("----------end loop----------")

六。python中or和and的优先级,有and先算and,算完and再算or,优先级上,and要高
Tip:or两边进行比较的,如果是两个int类型的,x or y,如果x非零,则返回x,否则返回的是y
int --> bool 0转换成bool是false,非零转会成bool则是true
bool --> int true转换成int就是1.false转换成int就是0
and两边进行比较int,x and y,如果x为非零,则返回y,
七。各种数据类型的作用
int:数字类型,用户计算,±*/
bool:True,False 用于用户判断
str:字符串,用于储存少量的字符串,方便用操作
list: [1,2,2,3,4,‘123’,‘字符串’],用于储存大量数据
元祖(1,2,3,4,‘123’),自读列表
dict:字典:{‘name’:‘张三’} key:value形式 类似于java中的map
集合:{1,2,3,4,5,‘123’}
八。str的相关方法
s1 = s[x] ------取下标为X的字符,(字符串中的下标是从0开始的)
s2 = s[x:y] -----取字符串中的的一段字符,s[开始的下标位置,结束的下标位置],顾头不顾尾,能取到开始的字符,但是取不到结束的字符,取到的最后一个是结束位置的前一位。
s3 = s[-x]------取字符串中的从后往前数的第x个字符
s4 = s[:]/s5 = s[0:] --------取全部的字符串
s6 = s[x:y:z] ------取x到y之间的每z个字符取一个[开始的下标位置,结束下标的位置,步长]
如果z为负值,则是倒着取,这是的x作为开始的位置,则应该是从后往前的开始的下标位置
九。字符串的相关方法

# ####字符串索引切片
# s = 'ABCDEFG'
# #按照索引去字符串中的某个字符
# # s1 = s[0]
# # print(s1)
# #取字符串中的某一段(顾头不顾尾,可以取到第一个,但是取不到最后一个)
# s2 = s[0:3]
# print(s2)
# s3 = s[0:5:3]
# print(s3)

#字符串的操作
s = 'alexwusir'
#字符串首字符大写
# s1 = s.capitalize()
# print(s1)
#字符串全部变成大写
# s2 = s.upper()
# s21 = s2.lower()#字符串全部变成小写
# print(s21)
# #字符串大小写反转
# s3 = s.swapcase()
# print(s3)
#字符串中每个单词的第一个首字符大写(空格或者特殊字符(数字也算)隔开就可以)
# s = 'this is apple'
# s4 = s.title()
# print(s4)
#字符串前后添加字符(添加的长度,添加的字符(不写就是空格))
# s = 'asdfsdf'
# s5 = s.center(10,'*')
# print(s5)
# #如果字符串中有\t,从\t向前补齐8位或8的次方位
# s6 = s.expandtabs()
# print(s6)
#公共方法(获取字符串,数组,列表等字符长度)
# s = 'asdfasfasfasdf'
# l = len(s)
# print(l)
# #判断字符串是否以某字符开头 //结尾是endwith
# s7 = s.startswith('as') #判断整体是否是以**开头
# s71 = s.startswith('e',2,4) #判断在2到4内,是否是以**开头的
# print(s7)
# print(s71)
#判断字符串中是否有某个字符(如果找到返回下标,找不到则返回-1)
# s = 'asdLJLKfjls'
# s8 = s.find('e') #判断整个字符串是否有L这个字符
# # s81 = s.find('2',1,4)
# s81 = s.index('2') #找不到会报错,推荐使用find
# print(s8)
# print(s81)
#去掉字符串中前后的空格(默认是删除空格,还可以自定义删除开头或者结尾的内容)
# s = '%%df   sdsa%%'
# s9 = s.strip()
# s91 = s.strip('%')
# print(s9)
# #只去掉前或者后的空格或者其他字符,
# s92 = s.rstrip('%')
# s93 = s.lstrip('%')
# print(s92)
# print(s93)
# #数出某个字符在字符串中的个数(或者字符串中某一段中的某个字符的个数)
# s = 'asfwefewfsdfa'
# s10 = s.count('e')
# print(s10)
# #分割字符串(返回的是list)
# s = 'asd*dsf*sdf'
# s11 = s.split('*')
# print(s11)
#format的三种方式,格式化输出
# res='{} {} {}'.format('egon',18,'male')
# # # # # res='{1} {0} {1}'.format('egon',18,'male')
# # # # # rs='{name} {age} {sex}'.format(sex='male',name='egon',aege=18
#替换字符串中的某些字符(第三个参数可以不填,不填就替换全部)
# s = 'asdfasdfadf'
# s12 = s.replace('a','x',1)
# print(s12)
#判断字符串如何组成
# name = 'asdf123'
# print(name.isalnum()) #字符串由字母或数字组成
# print(name.isalpha()) #字符串只由字母组成
# print(name.isdigit()) #字符串只由数字组成

##for循环
# s = 'asdfgafdfa'
# for index in s:
#     print(index)

#tip:用in可以判断字符床中是否包含某字符
# s = 'asdtin'
# if 'asd' in s:
#     print('test')

####list方法

li = ['123',[1,2,3],'asdf','f4f']
#list是有顺序的,每一个元素下都有下标,方便取值
l1 = li[0]


#在最后追加
# li.append('test')
# print(li)

#插入
# li.insert(3,'test')
# print(li)

#删除
#按照下标删
# name = li.pop(0)#返回值是删除的那个元素(默认删除的是最后一个元素)
# print(name)
#按照元素删
# li.remove('123')
# print(li)
#删除所有元素
# li.clear()
# print(li)
#删除所有元素并且删除list(删除以后li就不存在了),也可以切片去删除
# del li
# del li[0:2]
# print(li)

#修改
#直接重新赋值
# li[0] = 'ceshi'
# print(li)
#切片式直接添加(只要是切片修改,就会直接将要修改的内容切片后添加到list中,不论修改内容能切多少)
# li[0:2] = 'test'
# li[0:3] = [7,8,9,'ceshi','test','test1']
# print(li)

#查询
#遍历
# for index in li:
#     print(index)
#查询某些内容
# print(li[0:3])#查询出来仍是一个list

#公共方法
# l = len(li)#获取list的长度
# print(l)
# li.count('test')#获取某元素出现的次数
# li.index('test')#获取某元素出现的下标位置

#排序
li.sort()#数字元素从小到大(正序排序)
li.sort(reverse=True)#reverse=True是反向排序
li.reverse()#反转排序

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值