python入门

计算机相关知识

unicode:32位,4个字节。优点:包含所有语言;弊端:占空间太大
utf-8:对汉字编码,占3个字节
GBK: 2个字节

变量

a=1
b=2
c=3
d=a+b+c
print(d)

数据类型

int 类
v = 15
data = v.bit_length() # 当前十进制用二进制表示时,最少使用的位数
print(v) # 15
print(data) # 4
int–bool–str相互转化
bool、str 转 int
strint
v="123"
val=int(v)
print(val) # 123


boolint
v1= False
val1=int(v1)  # False 强转后是 0
print(val1)  # 0

v2= True
val2=int(v2) # True 强转后是 1
print(val2) # 1
int、bool 转 str
boolstr
v=True
print(v,type(v)) # True <class 'bool'>

val= str(v) #变成了 "True"
print(val,type(val)) # True <class 'str'>



intstr
v=123
print(v,type(v)) # 123 <class 'int'>

val= str(v) #变成了 "123"
print(val,type(val)) # 123 <class 'str'>
int、str 转 bool
# int 转bool时,如果 int类型的值为0,则转换后 结果为 False
v1 = 0
val1 = bool(v1)
print(val1) # False

# int 转bool时,只要 int类型的值不为0,则转换后 结果为 True
v = -12
val = bool(v) 
print(val) # True


# str 转bool时,如果 str类型的值为 空串 "",则转换后 结果为 False,其余则为 True(哪怕是一个空格)
v = ""
val = bool(v)
print(val) # False

v1 = "abc"
val1 = bool(v1)
print(val1) # True
类型转换的几个特例
a = 1 == 1 or 2 > 3
print(a) # True

a = True == 1 or 2 > 3
print(a) # True

a = True == 5 or 2 > 3
print(a) # False

a = False == 0 or 2 > 3
print(a) # True

a = False == 4 or 2 > 3
print(a) # False

a = 0 or 2 > 3
print(a) # False

a = 7 or 2 > 3
print(a) # 7

a = "abc" or 2 > 3
print(a) # abc

a = 0 or 7
print(a) # 7

a = 4 or 7
print(a) # 4

运算符

逻辑运算符
and  与  只有a为True 并且 b也为True, a and b 才是 True,否则是False
or   或  a为True 或者 b 为True, a or b 就是True
not  非  a为Truenot a 为False
成员运算
in  在。。。中,属于。。。。

msg = "我叫张生,我喜欢打篮球"
if "喜欢" in msg:
    print('good')
else:
    print('懒')

条件语句

if 9>10:
    print("假的")
else:
    print("不是的")

循环语句

a=1
while a<3:
    print("循环语句")
    a=a+1
while循环
start=1
flag=True
while flag:
    print(start)
    start=start+1
    if(start==4):
        flag=False
i=1
while i<5:
    print(i)
    i = i + 1

字符串

字符串常用功能

字符串无论如何变化,变大写、小写等,原值都是不变的

变大写 upper()
v1 = "alex"
value = v1.upper()
print(v1,value) #alex ALEX
变小写 lower()
v1 = "alEx"
value = v1.lower()
print(v1,value) # alEx alex
首字母变大写(其余字母变小写)capitalize()
v1 = "alEx"
value = v1.capitalize()
print(v1,value) # alEx Alex
去除首尾空格 strip()
v1 = " asd fasdf "
value = v1.strip()
print(v1) # asd fasdf
print(value)#asd fasdf

# 实例:
name = input("请输入用户名:")
value = name.strip()  
if value == 'alex':
    print('登录成功')
去除左边空格 lstrip()
v1 = " asd fasdf "
value = v1.lstrip()
print(value) #asd fasdf 
去除右边空格 rstrip()
v1 = " asd fasdf "
value = v1.rstrip()
print(value) # asd fasdf
替换 replace()
v1 = "abcdgefbcdefdacef"
value = v1.replace("b","**")
data = value.replace('d','##')
print(value) #a**cdgef**cdefdacef
print(data) #a**c##gef**c##ef##acef
分割 split()
v1 = "abcdefabceafsd"
value1 = v1.split('b') # 返回结果是列表类型
value2 = v1.split('c') 
value3 = v1.split('a',2) # 利用前2个a进行分割
print(value1) #['a', 'cdefa', 'ceafsd']
print(value2) #['a', 'cdefa', 'ceafsd']
print(value3) #['', 'bcdef', 'bceafsd']
判断当前字符串中是否全部都是数字 isdecimal()
v = "123"
val = v.isdecimal()
print(val) #True

#eg:判断一个字符串中有多少个数字
count = 0
v = "abc123fsdfa3f"
for item in v:
    if item.isdecimal():
        count += 1
print(count)

字符串公共功能

计算当前字符串长度
v = "徐芳名sdf"
value = len(v)
print(value) #6
根据索引(下标)取值
  • 单个值:v[0]
  • 多个值:v[起始位置:结束位置]
  • 多个值:v[起始位置:结束位置:步长]
    PS: -1表示最后
单个值:v[0]

v = "abcdefg"
value = v[0]
print(value) #a

多个值
value1 = v[0:5] # 取下标为 0 1 2 3 4 ,结果为 abcde
value2 = v[4:5] # 取下标为 4 ,结果为 e
value3 = v[4:-1] #取下标为 4 到末尾(不包含),结果为 ef
value4 = v[4:] # 取下标为 4 到末尾(包含),结果为 ef
print(value1) #abcde
print(value2) #e
print(value3) #ef
print(value4) #efg

字符串截取

v="abcdefg"
v1=v[0:3] #前闭后开
print(v1) #abc

v2=v[3:] #从第4个到末尾
print(v2) #defg

v3=v[3:-1] #从第4个到最后一个(不包含)
print(v3) #def

v4=v[0:6:2] #步长为2,一步取一个
print(v4) #ace

v = "abcdefghijklmnopq"
value = v[1:15:3]  #步长为3,隔2个取一个
print(value) # behkn

字符串的遍历

方式一:

v = "ASCII"
length = len(v)
index = 0
while True:
    data = v[index]
    print(data)
    index += 1
    if index == length:
        break
方式二:

v = "ASCII"
length = len(v)
index = 0
while index < length:
    data = v[index]
    print(data)
    index += 1
方式三:

v = "ASCII"
for i in v:
    print(i)

字符串格式化:将数字和字符串相结合

msg = "我叫%s" %("老张")
print(msg) #我叫老张
# % 是占位符
msg = "我叫%s,年龄是%d,爱好是%s" %("老张",18,"打球")
print(msg) # 我叫老张,年龄是18,爱好是打球
name = input("请输入姓名:")
age = input("请输入年龄:")
hobby = input("请输入爱好:")
msg = "我叫%s,年龄是%s,爱好是%s" %(name,age,hobby)
print(msg)
# 如果想要输出%,需要写两个%
tpl = "我是%s,年龄%d,学习进度100%%" %('雷锋',99)
print(tpl)  #我是雷锋,年龄99,学习进度100%

字典 dict

二维字典的遍历

d={
    "2020":{"zhangsan":3},
    "2021":{"lisi":2,"wangwu":5}
}

for key,value in d.items():
    print(key,end=":")
    for key2,value2 in value.items():
        print(key2,value2)
# 结果如下:
# 2020:zhangsan 3
# 2021:lisi 2
# wangwu 5
for key,value in d.items():
    for key2,value2 in value.items():
        print(key+"**"+key2+"**"+str(value2))

#结果如下:
2020**zhangsan**3
2021**lisi**2
2021**wangwu**5


持续更新。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值