python基础|数据类型|数字,字符串

1 数字

  用途:手机号码,不带字母的身份证号码,年龄等

  定义方式:

age = 18

  关于数字我们最常见的就是int()。int()可以整形成数字类型,但是在整形字符串时要注意,只能整形纯数字且不带小数点的数字。也可整形有符号数的字符串形式如

print('-1')
-1

  对于带小数点的数,我们可以用float(),经行整形

print(float('-1.1'))
-1.1

 进制转换

  在python中不只有十进制数,还有二进制数,八进制数和十六进制数,进制转换是如何实现?

 其他进制转十进制

# 二进制转十进制
10     # 1(2**1)+ 0*(2**1)
# 八进制转十进制
235     # 2*(8**2)+ 3*(8**1)+5*(8**0)
# 十六进制转十进制
217     # 2(18**2)+1(16**1)+7*(16**0)

  十进制转其他进制转

# 十进制转二进制
print(bin(10))      # 0b表示二进制

# 十进制转八进制
print(oct(10))      # 0o表示八进制

# 十进制转十六进制
print(hex(10))      # 0x表示十六进制
print(int('1011', 2))    # 二进制转十进制,int可以传一个参数
print(int('11', 8)) # 八进制转十进制
print(int('11', 16))   # 十六进制转十进制

2 字符串

  用途:信息描述

  定义方式:' ', " ", ''' ''',

  常用的操作

1,索引取值

practice = 'hello! meKing'
print(practice[1])
e

2 字符串切片(正反切片):切片区间顾头不顾尾,八大字符串切取一个小的字符串

practice = 'hello! meKing'
print(practice[1:5])    # 从第2到5个。字符串列表都是从0开始计算
ello
print(practice[1:5:1]) #在没有设置步长将默认为1 ello
print(practice[1:8:2]) #在设置步长为2是,从第一个索引值数到第七个,每两个截取一个值 eom
print(practice[1:5:-1]) #从右往左切 !oll

2 长度len():统计字符个数

practice = 'hello! meKing'
print(len(practice))
13

4 成员运算in 和 not in

print('a'in s)
True
print('a 'not in s) False

4 去空格strip():默认去除字符串两边的数字

str1 = '  meKing  '
print(str1.strip())    #去除meKing两边的空格
meKing  
str2
= 'meKing' print(str2.strip('m')) #去除两边的‘m'字符 eKing

  还有rstrip()从右边切 和 lstrip()从左边切。

5 切分split:针对某种分割符的字符串,可以用split切分成列表 

str1 = 'name:meKing:123'
print(str.split(':')
print(a.split(':')) # 切割顺序是从左往右切的 ['name', 'meKing', '123']
print(a.rsplit(':', 1)) # 切割顺序是从左往右切的 ['name:meKing', '123']

6 循环

  支持for循环,将字符串中的内容,一个一个字节送出

str1 = '123456789'
for i in str1:
    print(i,end=' ')
1 2 3 4 5 6 7 8 9 
lower()    #将字符串内地字母小写
upper() #将字符串的字母大写
startswith() #判断字符串以什么开始
endswith() #判断字符串以什么结尾
format() # 推荐使用的占位符 #第一种 按位置占位 str1 = 'my name is {} me age is {}'.format('meKing', 18) print(str1) my name is meKing me age is 18 #第二种按索引占位 str1 = 'my name is {0} me age is {0}'.format('meKing', 18) print(str1) my name is meKing me age is meKing #第三种 指名道姓展位(关键字传参) name = 'meKing' age = 18 str1 = 'my name is {} me age is {}'.format(name, age) print(str1) my name is meKing me age is 18

join():将序列中中的元素以指定的字符连接生成一个新的字符串
data = 'name:meKing:18'
data1 = data.split(':')
print(data1)
['name', 'meKing', '18']
print(''.join(data1))
namemeKing18
replace():替换
str1= 'name:meKing:18'
print(str1.replace(':', ','))  #将','替换':'.
name,meKing,18
istigit():判断字符串是不是无符号纯整数,

PS 字符串有三个特点:存一个值:在引号内的数据,对字符串来讲就是一个值

           有序:字符串中的元素所占的字节,是有序的,可以通过索引查找

           不可变类型:当字符串中的值改变是,id地址在也会改变

3 列表

  用途:可装多个元素,字符串,数字,都可以

  定义方式:将元素放入'[]'内,用','隔开.

  常用操作

1 取值:按索引取值

list1 = [1, 2, 'a', 'b']
print(list1[3])
a

 2 切片,在切片区间顾头不顾尾

list1 = [1, 2, 'a', 'b']
print(list1[0:3])   #切片区间(0 3) 
[1, 2, 'a']
print(list1[0:3:2]) #切片区间(0 3),步长为2,每两个切一下
[1, 'a']
print(list1[4:1:-1])    #反向切片
['b', 'a']

3 长度len(),计数列表元素个数或列表长度

list1 = [1, 2, 'a', 'b']
print(len(list1))

4 成员运算in 和 not in

list1 = [1, 2, 'a', 'b']
print(1 in list1)
Ture
print(1 not in list1)
False

5 追加

l = [1, 2, 'a', 'b']
l1 = [1, 2, 3, 4]
l.append(l1)    # 尾部添加
print(l)
[1, 2, 'a', 'b', [1, 2, 3, 4]]

l.insert(-1,l1)    指定位置添加
print(l)
[1, 2, 'a', [1, 2, 3, 4], 'b']

l.extend(l1)  # 将l1列表内的元素一个一个尾部添加l列表中
print(l)
[1, 2, 'a', 'b', 1, 2, 3, 4]

6 删除

del+对象 #永久删除,其中数据
l = [1, 2, 'a', 'b']
a = l.pop(2)    # 按照索引值删除,并且可以将删除值提出来使用
print(l)
print(a)
[1, 2, 'b']
b

7 循环

 支持for循环,将以将列表元素遍历。

小试牛刀

  # 写代码,有如下变量,请按照要求实现每个功能 (共6分,每小题各0.5分)
    name = " aleX"
  # 1)    移除 name 变量对应的值两边的空格,并输出处理结果

print(name.strip())
View Code

  # 2) 判断 name 变量对应的值是否以 "al" 开头,并输出结果 

print(name.startswith('al'))
View Code

  # 3)    判断 name 变量对应的值是否以 "X" 结尾,并输出结果


print(name.endswith('X'))
View Code

  # 4)    将 name 变量对应的值中的 “l” 替换为 “p”,并输出结果

print(name.replace('l','p'))
View Code

  # 5)    将 name 变量对应的值根据 “l” 分割,并输出结果。

print(name.split('l'))
View Code

 

  # 6)    将 name 变量对应的值变大写,并输出结果


print(name.upper())
View Code

 

  # 7)    将 name 变量对应的值变小写,并输出结果 

print(name.lower())
View Code
name = " aleX"
# 8)    请输出 name 变量对应的值的第 2 个字符?
print(name[2])
# 9)    请输出 name 变量对应的值的前 3 个字符?
print(name[:3])
# 10)    请输出 name 变量对应的值的后 2 个字符?
print(name[len(name)-2:len(name):1])

# 11)    请输出 name 变量对应的值中 “e” 所在索引位置? # 12)
print(name.find('e'))
# 获取子序列,去掉最后一个字符。如: oldboy 则获取 oldbo。
print(name[:len(name)-1])
View Code

 

  

猜你喜欢

转载自www.cnblogs.com/huaiXin/p/11128190.html
今日推荐