python基础语法3 整形,浮点,字符串,列表

整形:

========================基本方法===========================
用途: 一般用于定义整数:年龄、身份证号、qq号
定义方式:
age = 18 # age = int(18)

进制之间的转换:
其他进制转10进制

二进制转十进制:0,1

110 1 * (2**2) + 1 * (2**1) + 0 * (2**0) = 4 + 2 + 0 = 6

八进制转十进制:0-7

123 1 * (8**2) + 2 * (8**1) + 3 * (8**0) = 64 + 16 + 3 = 83

十六进制转十进制:0-9 a-f

321 3 * (16 ** 2) + 2 * (16 ** 1) + 1 * (16**0) = 768 + 32 + 1 = 801

print(int("110",2))      #二进制转十进制      
print(int("123",8))      #八进制转十进制  
print(int("321",16))     #十六进制转十进制  

result:

  6
  83
  801

10进制转其他进制: 0-9

# 十进制转二进制:
print(bin(108))  # 0b 1101100

# 十进制转八进制:
print(oct(83))   # 0o 123

# 十进制转十六进制:
print(hex(1000))  # 0x 3e8

=========================类型总结==========================
1.有序or无序    (有索引的类型都是有序的)     无序
2.可变or不可变     int整型是不可变类型

值变id不变就是可变类型
值变id也变就是不可变类型

3.存一个值or存多个值  存一个值

浮点型:

========================基本方法===========================
用途:用于记录小数,身高,体重,薪资
定义方式: height = 1.0 # height = float(1.0)

=========================类型总结==========================
有序or无序    无序
可变or不可变   不可变
存一个值or存多个值   存一个值

字符串:

========================基本方法===========================
用途: 用于存储一些描述性信息,名字。。
定义方式:

第一种:s1 = '大象'
第二种:s2 = "大象2"
第三种:s3 = '''大象3''' 或 s4 = """大象4"""

以上三种方式没有任何区别,但是不能混用

s5 = '你今天"吃饭"了吗'  #混用时引号注意区分

补充:字符串前面加一个小写的r,代表转义

常用方法:

优先掌握知识点
1、索引取值(正向取、反向取),只能取不能存

s1 = 'hello world'

print(s1[4]) # 正向取
print(s1[-7]) # 反向取

2、索引切片 : 截取字符串中的一小段字符串

print(s1[2:5])    #llo
print(s1[4:])     #o world
print(s1[:5])     #hello
print(s1[0:-2:2]) #hlowr     步长为2
print(s1[::-1])   #dlrow olleh   

3、成员运算:in not in

print("o" not in s1)   #False

4、strip :去除字符串左右两边的空格,中间不算

input无论接受的是什么类型,一定返回的是字符串

name = input(">>:").strip()   #默认去除左右两边空格
print(len(name))

a1 = '$$$$sean$$$'
print(a1.strip("$"))     #去除左右两边$

5、split : 切分: 对字符串进行切分,可以指定切分的分隔符,返回是一个列表

a1 = 'sean 18 male'
print(a1.split())  #默认为按照空格分割,可以填入字符,按照字符分割
#['sean', '18', 'male']

6、len() :获取当前数据中的元素的个数

a1 = 'hello'
print(len(a1))   #5

7、for语句

a1 = 'hello'
for i in a1:
    print(i)

需要掌握知识点:

strip,rstrip,lstrip

a='***asb***'
inp = a.lstrip("*")   #去除左面的*
print(inp)    #asb***

lower\upper

s1 = 'Hello world'
#转换为大小写
print(s1.upper())   #HELLO WORLD
print(s1.lower())    #hello world

startswith\endswith  : 判断当前字符串是否以。。。开头,或者以。。结尾,返回的一定是布尔值

print(s1.startswith("He"))   #True
print(s1.endswith('lK'))       #False

.format

print("你的名字是:",name,"你的年龄是,",age)
print("你的名字是:{},你的年龄是:{}".format(name,age))
print("你的名字是:{1},你的年龄是:{0}".format(name,age))
print("你的名字是:{name},你的年龄是:{age},{gender}".format(age=age,name=name,gender='male'))

f-string:通过大括号接收变量,在字符串前面一定要加一个小写f,,,,在python3.6以后才有

print(f"你的名字是:{name},你的年龄是:{age}")

split\rsplit

s1 = "name,age,gender"
print(s1.rsplit(",",1))  # 从右切割,指定切分的次数为1
#['name,age', 'gender']

join : 将(列表)中每个元素按照前面字符串中的分隔符进行拼接

l1 = ['sean','18','male']
print("|".join(l1))   #sean|18|male

replace:将字符串中的元素进行替换,参数,先老值,再新值

s1 = 'sean,18'
print(s1.replace("sean",'大象'))   #大象,18

isdigit() : 判断当前字符串中的数据,是否是一个数字,返回布尔值

score = input("please input your score:")

if score.isdigit():
    score = int(score)
    if score >= 90:
        print('优秀')
else:
    print("你tmd能不能好好输")

=========================类型总结==========================
1.有序or无序 : 有序
2.可变or不可变 :不可变类型
值变id不变就是可变类型
值变id也变就是不可变类型
3.存一个值or存多个值 : 存一个值

字符串要了解的知识点:

find\rfind\index\rindex\count

find # 查找当前字符串中某个元素的位置,返回索引,找不到返回-1

s1 = '你今天吃饭吃了吗?'
print(s1.find(""))    #8

index  # 查找当前字符串中某个元素的位置,返回索引,找不到返回异常

print(s1.index(""))     #8

count  # 统计当前字符串中某一个元素的个数

print(s1.count(""))     #2

center\ljust\rjust\zfill      #用zifu

print("欢迎光临".center(10,"-"))    #---欢迎光临---
print("欢迎光临".ljust(10,"-"))     #欢迎光临------
print("欢迎光临".rjust(10,"-"))     #------欢迎光临
print("欢迎光临".zfill(10))         #000000欢迎光临

expandtabs()  #设置表格举例参数   \t为绘制表格

s1 = """
sean\t18\tmale\t
"""
print(s1.expandtabs(20))

is系列

isnumeric()
True: Unicode数字,全角数字(双字节),罗马数字,汉字数字
False: 无
Error: byte数字(单字节)
isdigit()
True: Unicode数字,byte数字(单字节),全角数字(双字节),罗马数字
False: 汉字数字
Error: 无
a = b'10'
b = '10'
c = ''
d = ''
print(type(a))          #<class 'bytes'>
print(b.isnumeric())    #True
print(c.isnumeric())    #True
print(d.isnumeric())    #True


#isdigit: unicode,bytes print('--------') print(a.isdigit()) #True print(b.isdigit()) #True result: <class 'bytes'> True True True -------- True True

列表:

========================list基本方法===========================
用途: 用于存一个或者多个不同类型的值
定义方式: 通过中括号存值,每个值之间通过逗号进行分隔
常用方法:

优先掌握的知识点

1、索引取值(正反都可以),不仅可以取还可以存

l1 = [1, 2, 3, 4,5]
print(l1[2])
l1[2] = 222
print(l1)

2、索引切片

print(l1[1:4])

3、append() : 追加值。只能添加到列表的最后一位,一次性只能添加一个值

l1.append(10000)  
print(l1)
l1.append([9,0])    
print(l1)

4、insert() : 插入值,通过索引指定插入的位置

l1.insert(3,999)     #在索引3的位置插入999
print(l1)

5、extend()  #只能传入一个列表,相当于把其中所有元素全部加入列表

l1.extend([6,7,8])
print(l1)

6:remove : 指定值删除,比较彻底(从左到右,删除第一个指定元素)

l1.remove(1)
print(l1)

7、pop() : 不传值,默认从最后开始删,指定索引删值,pop是有返回值的

l1 = [1, 2, 3, 4,5]

val = l1.pop(2)
print(l1)       #[1, 2, 4, 5]
print(val)      #3
l1.pop()        #删除最后一个元素
print(l1)    #[1, 2, 4]
l1.pop()
print(l1)
l1.pop()
print(l1)

=========================类型总结==========================
有序or无序
可变or不可变
存一个值or存多个值

猜你喜欢

转载自www.cnblogs.com/ludingchao/p/11799889.html