学习python day2

---恢复内容开始---

一·变量:

变量定义的规则:

  • 变量名只能是 字母、数字或下划线的任意组合
  • 变量名的第一个字符不能是数字
  • 以下关键字不能声明为变量名  ['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']

二.基本数据类型:

type():查看其类型

1.数字:

  int()  整型

  long()  长整型

  float()  浮点型

  complex()  复数

数字 int():

int()   将字符串转换位数字:
 

b1="123"   #字符串
b2=int(b1)      #数字
b2=123
 
###
.bit_length()     当前数字的二进制用几位来表示     
age=5
r=age.bit_length()
print(r)
###
 
 
###
num="b"
v=int(num,base=16)     #base=2,8,16,意思是num是以几进制方式表示,v代表十进制的几
print(v)
 
 
num="101010"
v=int(num,base=2)    #加base时确定进制,不加默认十进制,
print(v)

num1="a"
v1=int(num1,base=16)
print(v1)

num2="0101010"
v2=int(num2,base=8)
print(v2)
 
num="10"
v=int(num,base=16)   #base=2,8,16,意思是num是以几进制方式表示
print(v)
###
 
 
 


 
 
 

2.字符串str

eg:a3="sfgh"

.lower()/.upper()

s="fghjkkkg"

s.lower() #返回s字符串的小写
s.upper()#返回s字符型的大写

.title()/.capitalize()

s="fghjkkkg"

S.title()  #返回字符串中所有单词首字母大写且其他字母小写的格式
S.capitalize()  #返回首字母大写、其他字母全部小写的新字符串

.swapcase()     对所有字符串做大小写转换(大写-->小写,小写-->大写)

S.isdecimal() 判断是否小数
S.isdigit()  判断是否时数字
S.isnumeric() 是否数字
S.isalnum() 是否字母

S.isalpha()是否字母

S.islower()判断是否小写
S.isupper()  判断是否大写
S.istitle()判断是否首字母大写

S.isspace()  判断字符串是否是空白(空格、制表符、换行符等)字符
S.isprintable()  是否是可打印字符(例如制表符、换行符就不是可打印字符,但空格是)
S.isidentifier() 是否满足标识符定义规则

.center(width,fillchar)  将字符串居中,左右两边使用fillchar进行填充,使得整个字符串的长度为width。fillchar默认为空格

S.ljust(width[, fillchar])    ljust() 使用fillchar填充在字符串S的右边,使得整体长度为width

S.rjust(width[, fillchar])    rjust() 则是填充在左边。如果不指定fillchar,则默认使用空格填充

S.zfill(width)  用0填充在字符串S的左边使其长度为width。如果S前右正负号 +/- ,则0填充在这两个符号的后面,且符号也算入长度

S.count(sub[, start[, end]])   返回字符串S中子串sub出现的次数,可以指定从哪里开始计算(start)以及计算到哪里结束(end),索引从0开始计算,不包括end边界。

.find()/.rfind().index()/.rindex()  

find()搜索字符串S中是否包含“ ”,如果包含,则返回“ ”的索引位置,否则返回"-1"。可以指定起始start和结束end的搜索位置

index()和find()一样,唯一不同点在于当找不到“ ”时,抛出 ValueError 错误

rfind()则是返回搜索到的最右边“ ”的位置,如果只搜索到一个或没有搜索到“ ”,则和find()是等价的,同理rindex()

S.expandtabs(N)将字符串S中的 \t 替换为一定数量的空格。默认N=8

是否以“ ”开头或结尾

S.endswith(
S.startswith()

S.translate()

S.partition(sep)    partition(sep) 从左边第一个sep进行分割
S.rpartition(sep)     rpartition(sep) 从右边第一个sep进行分割。

split、rsplit和splitlines

split() 根据sep对S进行分割

splitlines()用来专门用来分割换行符   splitlines() 中可以指定各种换行符,常见的是 \n\r\r\n 。如果指定keepends为True,则保留所有的换行符

S.join(iterable)  将可迭代对象(iterable)中的字符串使用S连接起来。注意,iterable中必须全部是字符串类型,否则报错。

S.strip([chars]) 
S.lstrip([chars]) 
S.rstrip([chars])

分别是移除左右两边、左边、右边的字符char。如果不指定chars或者指定为 None ,则默认移除空白(空格、制表符、换行符)。

3.列表list

###

1.列表格式:用[]括起来
li = [1,2,4,5,["sdf","seer",2,3,5],"yanchuanyou",9,7,1]
2.列表中可以嵌套任何类型:数字,字母,字符串,嵌套任何东西
3.通过索引取值
4.切片,切片结果也是列表
5.支持for循环,while循环
6.可以通过索引方式进行修改和删除
7.通过切片的方式进行修改和删除
8.in操作
9.用索引取值
li = [1,3,4,["shezhengwn",[2,3,4,5],"ales"],5,6,7,"age","yanchuanyou"]
v=li[3][1][2]
print(v)

10.字符串转列表:内部使用for循环
s = "dfhthyuhmk"
li = list(s)
print(li)
11.列表转换字符串
①当列表中既有数字又有字符串时,自己写一个for循环:
s = ""
li = [1,2,4,6,"kiy","yanchuanyou",4,6]
for i in li:
    s = s + str(i)
print(s)
②只有字符串时,使用join
li = ["kiy","yanchuanyou"]
s = "".join(li)
print(s)
"""
"""
li = ["kiy","yanchuanyou"]
s = "".join(li)
print(s)
    """
"""
int
str
list
"""
#参数(li对象调用方法)
#.append()原来值最后追加到最后
#li = [11,22,44,55]
#li.append(1)
#li.append(["kiy"])
#li.append("jjjj")
#print(li)

#.clear()清空列表
#li.clear()
#print(li)
#.copy() 拷贝
#v = li.copy()
#print(v)
#.count()  计数元素出现次数
#v=li.count(22)
#print(v)
#.extend()  扩展,iter,迭代,iterable可迭代的,字符串和列表都是可迭代对象
#将extend()中的每个值追加到最后,与.append()有一点差别,extend要执行for循环
#li.extend([2355,"dergy"])
#print(li)

#.index()根据值获取当前值索引位置(左边优先)
#v=li.index(22)
#print(v)
#.insert()指定索引位置插入元素
#li.insert(0,99)
#print(li)
#.pop()删除,默认删除最后一个元素,
#v=li.pop()
#print(li)
#print(v)
#.remove()删除列表中的指定值,左边优先
#li.remove(22)
#print(li)

"""
删除
del
pop
remove
clear
"""
#,reverse()将列表元素进行反转
#li.reverse()
#print(li)
#.sort()排序
#li = [44,65,35,24,2,4,22,56]
#li.sort()     #从小到大
#print(li)
#li.sort(reverse=True)#从大到小
#print(li)
 

###

 

4.元组

#列表:list列表时有序的,元素可以被修改增加删除
#li=[11,22,44,55]
#元组:tuple  ,,是对列表的二次加工
#元组的一级元素不可被修改/增加/删除 
# tuple:tu = (11,2,22,33,444,)

#可以索引,元组是有序的
#tu=(11,22,[22,33,44],True,(22,55),89,"yhhnndh",)
#v=tu[2]
#print(v)
#可以切片:
#tu=(11,22,[22,33,44],True,(22,55),89,"yhhnndh",)
#v=tu[1:3]
#print(v)
#可以for循环,可迭代对象
#for item in tu:
#    print(item)
#转换:字符串,列表,元组之间转换
#s="wethydgr6"
#li=[22,3,4,66,7,4]
#tu=(33,4,56,32,"ddd")
#v=tuple(s)
#print(v)
#v=tuple(li)
#print(v)
#v=list(s)
#print(v)
#v=list(tu)
#print(v)
#v=str(li)
#print(v)
#v=str(tu)
#print(v)
#tuple 的方法
#.count()获取指定元素在元组中出现的次数
#.index()获取指定元素在元组中的索引

5.字典 

#字典:
#键-值 对    基本结构
#info={
#      "k1":"hhh",#键(key)-值(value) 对   列表,布尔值(1和0可能会重复),字典不能做key
#      2:"jjh",       #value可以有数字,字符串,列表,元组,字典,布尔值
#      "k3":[22,
#            33,
#            44,
#            55,
#            ["www",00,"fff"],
#            {"kk1":"vv1",
#             "kk2":(33,44,66,77)},
#             (3,4,5,6,),
#             "sss"]
#      }
     
#print(info)

#字典是无序的
#v=info["k1"]
#print(v)

#v=info[2]
#print(v)

#可以通过索引方式查找:
info={
      "k1":"hhh",#键(key)-值(value) 对   列表,布尔值(1和0可能会重复),字典不能做key
      2:"jjh",       #value可以有数字,字符串,列表,元组,字典,布尔值
      "k3":[22,
            33,
            44,
            55,
            ["www",00,"fff"],
            {"kk1":"vv1",
             "kk2":(33,44,66,77)},
             (3,4,5,6,),
             "sss"]
      }
v=info["k3"][5]["kk2"][1]
print(v)

#字典可以用del删除
#del info[2]
#print(info)
#字典支持for循环
#for item in info:    #默认获取key
#    print(item)
   
#for item in info.keys():      #获取key
#    print(item)
   
#for item in info.values():   #获取value
#    print(item)
#for item in info.items():    #key和value同时获得
#    print(item)
#根基序列创建字典,指定统一值
#v=dict.fromkeys(["11",11,"k1"])
#print(v)
#
#v=dict.fromkeys(["11",11,"k1"],888)
#print(v)
#根据key获取值,key不存在时,可以指定默认值()
#dic={
#     "k1":"v1",
#     "k2":"v2"
#     }
#v = dic["k11111"]
#print(v)
#v=dic.get("k1",111)
#print(v)
#删除:.pop()   .itempop()
#.setdefault()
#设置值:key存在时,不设置,获取当前key对应的值
#      key不存在时,设置,获取当前key对应的值
#.updata()更新
#dic={
#     "k1":"v1",
#     "k2":"v2"
#     }
#dic.update({"k1":123,
#            "k3":"yui"})
#print(dic)
#dic.update(k1=2,k3=7,k7="hjggf")
#print(dic)
 
 

三.基本运算

+加
-减
*乘
**取幂
/除法10/4    ——2.5
//取商10//4——2
%取余10%3——1
==判断是否等于
=赋值
> —— 大于
<——小于
<=——小于等于
>=——大于等于
!=和<>——不等于
and与运算
or或运算
(有括号先算括号,无括号从左到右运算,and和or没有优先级)

布尔值:
Ture——真
False——假
成员运算:
判断某个东西是否在里面
in          not in        (成员操作)
name="yanchuanyou"
if "yan" in name:     #得连续字符才正确,y,yan,正确,yn错误
    print("ok")
else:
    print("error")

---恢复内容结束---

猜你喜欢

转载自www.cnblogs.com/yan1994/p/11488759.html