博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python中的关键字---1(基础数据类)
阅读量:4540 次
发布时间:2019-06-08

本文共 5739 字,大约阅读时间需要 19 分钟。

变量命名规则:

1.变量由字母数字下划线组成

2.变量不能以数字开头
3.禁止使用python中关键字
4.禁止使用中文和拼音
5.变量名要区分大小写
6.变量名要有意义
7.推荐写法.
驼峰体.
大驼峰.AgeOfOldboy
小驼峰.ageOfOldboy
下划线.age_of_oldboy

字符串规则:

字符串拼接,

字符串只能和字符串相加
字符串不能减法
字符串只能和数字相乘
字符串不能进行相除

基础数据类型

int,整形,用于计算和比较

str字符串,字符串只能和字符串相加,字符串只能和数字相乘
bool布尔值,True,False

程序交互(input)

type查看数据类型,
注意:input获取到的内容都是字符串
int("6")将字符串转换成数字
str(6)将数字转换成字符串"6"

密码加密:

import getpass
user = input("请输入用户名:")
pwd = getpass.getpass("请输入密码:"
print(user,pwd)

格式化输出:

name = input("请输入姓名")
age = input("请输入年龄")
job = input("请输入职业")
hobbie = input("请输入爱好")
print('''
name : %s
age : %s
job : %s
'''%(name,age,job,hobbie)

"""
print(f'''
name : {name}
age : {age}
job : {job}
hobbie : {hobbie}
"""


 

运算符

算数运算符

print(a + b)加

print(b - a)减
print(b * a) 乘
print(b / a)除(有小数点)
print(b % a) 取膜
print(b ** a)幂 (几次方)
print(b // a)整除(没有小数点)

比较运算符

print(b > a)大于

print(b < a)小于
print(b >= a)大于等于
print(b <= a)小于等于
print(b == a)等于
print(b != a)不等于

赋值运算符

a +=10

a -= 10
a *= 10
a /= 10

() > not > and > or

and两边的条件都为真的时候才是真,and前后的数字不为0的时候,取and后边的数字,否则取0
or两边的条件只要有一个为真就是真,or前后的数字不为0的时候取or前面的数字,否则有0的时候取非0
not只要碰到真的就是假的,碰到假的就是真的

 


 

字符串详解:

title每个单词首字母大写

capitalize首字大写
lower全部小写
upper全部大写
strip脱,默认脱头尾的空格
find索引(通过下标查找)不存在返回 -1
index索引(通过下标查找)不存在报错
切片:[起始位置:终止位置:步长(方向)]
count统计(计数)
center居中
format % f格式化输出
isalnum判断是不是数字和字母
isalpha判断是不是纯字母
isdigit判断是不是纯数字
split分割
join插入,拼接
startswith以什么开始,获取的结果是布尔值
endswith以什么结尾,获取的结果是布尔值


列表

append在后面添加
insert按照下标添加
extend迭代添加

remove移除指定元素
pop弹出(默认删除组字后一个),通过下标删除对应元素
clear清空列表
del删除列表,通过下标删除对应元素

lst[1]通过下标修改对应元素
lst[0:5]通过下标范围修改

lst[2]通过下标查找对应元素


字典{'key':1}

不可变:(可哈希): 数字 字符串 元组 布尔值

可变: (不可哈希) 列表 字典

字典里的键必须保证唯一(不能重复)

python36 有顺序打印
python35及以下无序打印

dic['3'] = '小奶狗的芭比',如果这个键不在字典中就是添加,存在就是修改
dic.setdefault(' 隔壁老王','男人不在就上'),存在就不进行添加,不存在就添加
setdefault中第一个参数是键,第二参数是值,如果不写值就默认为None

dic.pop('3'),参数是要删除的键
pop,返回的是被删除的值
dic.popitem(),随机删除,在python36中删除最后一个,python35及以下随机删除
popitem,返回的是被删除的键值对以元组的形式显示
del dic,删除整个字典
del dic['3'],通过dic['键']删除
dic.clear(),清空

dic[1] = 78,如果这个键在字典中就是修改,不存在就是添加
dic1.update(dic)

dic.get(4),不存在不报错,默认返回None,可以自己定义返回值
dic[4]不存在就报错
print(dic.keys()) ,高仿列表A货
print(dic.values()),高仿列表A货
print(dic.items()),以元组形式将键值对放在一个高仿列表里


编码

ascii  # 不支持中文 unicode  万国码   中文4个字节  英文 2个 utf-8    最少使用1个字节   欧洲 2  亚洲 3 gbk     中文 2 英 1 windows  默认编码GBK a = '你好黑' a1 = 'abc' a2 = a.encode('utf-8')   #编码 print(a) print(a2) a3 = a2.decode('utf-8')  #解码 print(a3) bytes字节   用于传输和存储 a = '你好黑' a1 = 'abc' a2 = a.encode('gbk')  #编码 a3 = a.encode('utf-8')   # 最长用 print(a2) print(a3) a4 = a2.decode('gbk') #解码 a5 = a3.decode('utf-8') print(a4,a5)

set 集合  {}  无序 s = {1,2,3,4,5} s = {} print(type(s))   # 空{}就是字典 s = {1,2,3,4,5} s = {1,2,3,'22','ss',False,(3,4)} 列表 和 字典 和 集合 print(s) 增 s.add(8) print(s) s.update('alex')   # 迭代添加 print(s) 删 s = {1,2,3,'22','ss',(3,4)} s1 = s.pop()    #随机删除 print(s)    #返回值  返回的被删除的元素 print(s1) s.clear() print(s)      #清空 set() s = {1,2,3,'22','ss',(3,4)} del s           #删除整个集合 print(s) s = {1,2,3,'22','ss',(3,4)} s.remove()    #通过元素指定删除 print(s) 改: s = {1,2,3,'22','ss',(3,4)} s.remove(3) s.add(7) print(s) 查: s = {1,2,3,'22','ss',(3,4)} for i in s:     print(i) s = {1,2,3,4,33,21,4,1234,34,1234,5324,1234,12341,23,22,34112,2,21,23,34,123,4} 集合天然去重 print(s) 面试题: lst = [1,2,3,42,3,45,67,534,2] print(list(set(lst))) s = set(lst) print(list(s)) 其他操作: s = {'黑哥'} s1 = {'虎哥','开哥','王哥','黑哥','wu哥'} print(s & s1)  #  交集  俩个集合都有的才输出 print(s | s1)    #   并集  两个集合 合并到一起 print(s1 - s)       # 差集   前面减后边的集合前边集合中有的输出出来   自己总结 print(s ^ s1)         # 反交集  自己总结 print(s < s1)     # 子集 print(s1 > s)     # 超(父)集 dic = {
{1,2,3}:1} a = frozenset((1,2,3)) dic ={a:1} print(dic) print(dic)

深浅拷贝 lst = [1,2,3,[4,5,6],7] lst1 = lst    #赋值 lst2 = lst[:] # 切片 # lst.append(7) print(lst) print(lst2) import copy lst4 = copy.deepcopy(lst)  # 深拷贝 lst[-2].append(7) print(lst)   #[1, 2, 3, [4, 5, 6,7], 7] print(lst4)  #[1, 2, 3, [4, 5, 6], 7] 浅拷贝:     拷贝的是第一层元素 深拷贝:     拷贝所有元素开辟新的空间存放,完全没有关系 lst  = [1,2,3] lst1 = [1,2,3] print(id(lst)) print(id(lst1)) 面试题 a = [1, 2] a[1] = a  # [1,[1,2]] print(a[1]) 答案: [1, [...]] lst = [1,3,[5,7],9] lst1 = lst lst2 = lst[:] print(id(lst)) print(id(lst1)) print(id(lst2)) lst.append(9) print(lst) print(lst1) print(lst2) 是不是一个东西  长的一不一样

文件操作
r 读 w 写 a 追加写 f = open('s.txt',mode='r',encoding='utf-8') ff = f.readline()    #读取时一行一行的时候末尾会跟着\n print(ff) ff = f.readline() print(ff) ff = f.readline() print(ff) ff = f.read(3) ff1 = f.read() print(ff) print(ff1) f.close() f = open('s.txt',mode='rb')  # 使用b的时候不能加编码集  b是操作字节的 ff = f.read() print(ff)     # \r是回车   \n是换行 f = open('s.txt',mode='r',encoding='utf-8') ff = f.read() print(ff) for i in f:     print(i) ff = f.read() print(ff) f = open('s.txt',mode='rb') ff = f.read(3) print(ff) 总结:     只读 r      正常文本     只读 rb     字节     read()    默认全读完  可以指定读几个     readline  一行一行读 f = open('s.txt',mode='w',encoding='utf-8') 打开   mode 是对文件操作的模式 w模式会自动创建文件  w会覆盖   先清空后写入 f.write('黑哥真黑,黑哥都自己黑感冒了') f.close() f1 = open('s.txt',mode='w',encoding='utf-8') f1.write('艺术哥,爱吃六味地黄丸') f1.close() 总结:     w只能覆盖的写     w模式会自动创建文件     w模式下写的时候首先清空文件的内容,然后在写 f = open('s.txt',mode='a',encoding='utf-8') 追加写 f.write('赵湿熊') f.write('金阳') f.write('宝宝') 总结:     a 追加   在文件文本末尾添加内容
print(f.read()) f = open('文件夹/s.txt',mode='r+',encoding='utf-8')   #r+ 读写 ff = f.read() print(ff) f.write('你好黑') f.write('你好黑')   # r模式 光标在最开头 ff = f.read() print(ff) ########坑##########  r+ 是咱们最常用的 f = open('文件夹/s.txt',mode='w+',encoding='utf-8')  # w+  写读 f.write('你好黑') f.flush()  # 刷新 f.seek(3)  # 调整光标位置到文件最开头 seek(0)   调整到开头 seek(3)   单个参数是字节数 0除外  0就是表示调整光标到开头 seek(0,1) 两个参数的时候就是表示光标调整到当前位置 seek(0,0) 两个参数的时候就是表示光标调整到开始位置 seek(0,2) 两个参数的时候就是表示光标调整到末尾位置 ff = f.read() print(ff) f.close()    关闭文件
 

 

转载于:https://www.cnblogs.com/Godisgirl/p/10012225.html

你可能感兴趣的文章
pycharm 快捷键
查看>>
Linux常用命令
查看>>
.net中的设计模式---单例模式
查看>>
安装程序工具 (Installutil.exe)22
查看>>
如何简单解释 MapReduce算法
查看>>
面向接口编程详解(二)——编程实例
查看>>
解决java.lang.NoClassDefFoundError: org/apache/log4j/Level
查看>>
端口号
查看>>
mysql for macOS安装
查看>>
HDU5092——Seam Carving(动态规划+回溯)(2014上海邀请赛重现)
查看>>
语言基础
查看>>
C# : 操作Word文件的API - (将C# source中的xml注释转换成word文档)
查看>>
C#中字符串转换成枚举类型的方法
查看>>
Airplace平台
查看>>
TinyOS实例介绍
查看>>
我是怎么定义微服务平台?
查看>>
python random
查看>>
input输入框只允许输入数字/ 数字+小数点/ 文字+字母/ 等解决方法
查看>>
【翻译】西川善司「实验做出的游戏图形」「GUILTY GEAR Xrd -SIGN-」中实现的「纯卡通动画的实时3D图形」的秘密,前篇(2)...
查看>>
mysql 5.6 参数详解
查看>>