python 基础

Python   今天从 Hello World! 开始吧.

现存版本:
    2.7  官方2020年后不维护了,建议python3
    3.x

数据类型

List 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort'
Dict 'clear', 'copy', 'fromkeys', 'get', 'items', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values'
Str 'capitalize','center','count','encode','endswith','find', 'format', 'index','isalnum','isalpha','isdigit','join','lower','lstrip','replace','rfind','rjust','rsplit','rstrip','split','startswith','strip','title','translate','upper','zfill'
Tuple 'count', 'index'
Set 'add','clear','copy','difference','pop','remove','update'

7 data-type:

数字 整型 int  1,2,3       py2x 中有长整型   py3x全都是整型  bool(0)为False     bool(非0)为True

字符串 str   ('a'  "b")      中文也是特殊字符        

列表 list       [1,2,3]       有序    可切片 索引 统计 拷贝    转换成其他数据类型

元组 tuple   (1,2,3)       有序    元组子元素不可改,孙元素可修改   注意:(括号里只有一个类型就是此类型)     

                                             tu.index(元素)查索引,

                                             tu.count(元素) 统计个数

字典dict     {1:a,2:b}     无序     键-值对数据  键唯一/值随意  

集合 set    {1,2,3}         无序     无重

布尔值    bool (True False) 


改变变量赋值内容
字符串 str + * '_'join的使用
str 切片 大小写 index count type类型 replace(替换) center(居中) split(分割) strip(脱) len长度
判断以什么开始 以什么结束 是不是大小写纯数字字母 是不是含特殊字符等 返回布尔值
列表 list +是合并 *相乘 lst= ['1','2','3'] print(','.join(lst)) 结果 字符串类型的 '123'
lst 增 append(追加) insert(插入) extend(遍历添加)
remove(移除) pop(弹出 默认最后一个) clear(清空,成空列表) del(可以删整个 也可以下标索引删除)
排序 sort(小到大) reverse(反转)
查 索引 #find返回-1 index报错 count计数
元组 ('aa',[1,2,3],{1:2,3:4})
元组不可修改 但其里面的除字符串,如列表/字典内可修改
count index
字典 dic={1:2,3:4}
键不可改(若键为元组 列表 字符串或字典都不能修改) 值随意
对于键值可以通过下标索引找到 并对这个元素进行各种属性操作
dic[key]=value 改变赋值
dic.setdefault(key,value)
items(结果[(key,value)]) keys values
pop
popitem
del dic
del dic[key]
update 更新
get
      一次性创建大量键不同值相同的字典
   dic = dict.fromkeys(['alex','wusir','wenzhou','nvshen','kaige'],['太白','姗姗'])
   fromkeys 第一是键  第二是值
   print(dic)
   得到 {'alex': ['太白', '姗姗'], 'wusir': ['太白', '姗姗'], 'wenzhou': ['太白', '姗姗'], 'nvshen': ['太白', '姗姗'], 'kaige': ['太白', '姗姗']}
   dic['alex'].append('老村长')
  print(dic) 
  得到 {'alex': ['太白', '姗姗', '老村长'], 'wusir': ['太白', '姗姗', '老村长'], 'wenzhou': ['太白', '姗姗', '老村长'], 'nvshen': ['太白', '姗姗', '老村长'], 'kaige': ['太白', '姗姗',   '老村长']}
布尔值
自带bool:
True
False:0 None '' [] {} 空字符串 空字典 空列表
格式化输出:
'%s'%变量 占位符
f {变量}
str.format(变量)
字符串运算符:
逻辑 not and or 与或非
赋值 =
比较 > < == !=等
成员 in not in
算数 +-*/
编码 bit位 1byte=8 bit
   ascii 美国 英文1字节 不支持中文 0 -- 255
   unicode 万国码 英文2字节 中文4字节
   utf-8 自动识别码 英文1字节 中文3字节
GBK 中国 英文1字节 中文2字节
数据类型转化:
int>str
str>int
list>str
dict>str
tuple>str
set(集合)>str
循环
while 无限循环 需要break跳出, continue停止当次,继续下次循环
for 有限循环 遍历
条件语句
if else 缩进
if elif else 缩进
程序交互:
input()
python 3.x 获取值是字符串类型
python 2.x 输入什么 就是什么
print()
集合:
s={1,3,4,5}
s.add(9) #增
s.update('was')#增 遍历
s.pop() #随机删除
s.clear() #清空 set()
s.remove(3) #删除指定元素
for i in s: #查找 遍历
s={'黑河','方法','迭代',}
s1={'黑河','电批','混合'}
print(s & s1)#交集
print(s|s1) #并集
print(s-s1) #差集
print(s^s1) #反交集
print(s<s1) #判断 父子集 关系 返回布尔值
a=frozenset((1,2,3)) # 冻结 集合

编码 解码 再次:
windows中国 默认 gbk
python3 默认utf-8
python2 ascii码
gbk 中文2字节
utf-8 3字节
a='黑哥'
a1='Sara'
a2=a.encode('gbk') #编码 用什么编写就用什么解码
a3=a.encode('utf-8')
a4=a2.decode('gbk') #解码
a5=a3.decode('utf-8')


深浅拷贝
deepcopy 深拷贝 追根溯源 拷贝所有元素开辟新的存储空间 完全没有关系

浅拷贝 拷贝复制的是第一层元素




原文地址:https://www.cnblogs.com/zhangchen-sx/p/9867881.html