python 第二天 数据类型

# 数据类型

# python2 int有范围 long 长整型
# python3 所有整型int

# int str list tuple元组 dict字典 bool
# 强制转换 str = "123" num = int(str) nnum = int(num, base=n)转换为n进制
# 类型查看 print(type())
# 选中按tab 区域缩进

num = 10

bynum = num.bit_length() # 求二进制位
print(bynum)

bionum = int(str(num), base=2) # 换算成二进制
print(type(bionum), bionum)

str1 = "life is short"

str2 = str1.capitalize() # 首字母大写
print(str2)

str3 = str1.casefold() # 首字母小写,更强大
print(str3)

str4 = str1.lower() # 字母小写 islower() 判断是否全部小写
print(str4)
# 不区分大小写的方法 全部变成小写
# upper() 大写 isupper() 判断是否全部大写
# swapcase() 大小写互相转换

str5 = str1.swapcase()
print(str5)

str5 = str1.center(30) # def 函数 self 参数不需要 传递值
					# width 设置宽度 
					# 第三个参数 默认值参数 空白填充
print(str5)

# ljust() 同center 居左 rjust 居右 

# zfill() 参数仅 宽度 用0填充

count = str1.count('i') # 计数 第二、三参数 字符串范围
print(count)

# encode decode

bif = str1.endswith('t') # 判断是否以此结尾

# startwith

# 找到 =-1 index() 找不到则出错
num = str1.find('i') # 找位置 第二、三参数 字符串范围 区间 左闭右开


# 传值 格式化 占位符

teststr = 'i am {name}, my age is {iage}'

newstr = teststr.format(name = 'hm', iage = 10)

print(newstr)

# or

teststr = 'i am {0}, my age is {1}' # 必须从0开始

newstr = teststr.format('hm', 10)

print(newstr)

# format_map

teststr = 'i am {name}, my age is {iage}'

newstr = teststr.format_map({'name':'hm', 'iage':10})

print(newstr)

str1 = "ABCDEF————HG"

bif = str1.isalnum() # 判断是否全是 字母 数字
# isalpha() 字母 isdigit() 数字 支持特殊的数字符号 isdecimal() 数字 isnumeric 数字 支持中文2
print(bif)

str1 = "NAME\tCODE\tNUMBER\nTIME\tBIRTH\tLOVE"
bif = str1.expandtabs(20)
# 将字符串按照20个字符一组划分,若遇到\t则改组结束,将tab转换为空格
print(bif)

# 判断标识符 isidentifier() 可与关键字重复 符合命名规则为 True

# isprintable() 是否存在打印时不可显示字符

# isspace() 全部是 space 为 True

# istitle() 所有单词首字母大写 为 True

# title() 所有单词首字母转换为大写

# join()

str1 = '你是风儿我是沙'

tool = ' '

str2 = tool.join(str1)

print(str2)

# str2 = ' '.join(str1)

str1 = ' test '

print(str1.strip()) # 去除左右空白(\n \t也可以去除)

# 含参数时 去除参数子序列 (最多匹配 -> 最少匹配)
# 另一种理解 去除参数 元素 

# lstrip 去左 rstrip 去右

str1 = 'aeiou'
str2 = '12345'
str3 = 'today is a terrible day'

str4 = str1.maketrans(str1, str2)
print(str3.translate(str4))

str1.replace("a","1")

# 替换

str1 = "iaibicieifig"
print(str1.partition('i')) # 只能分割成三份 rpartition()

print(str1.split('i', 6)) # 会删去分割的标识 rsplit()

# 正则表达式 可以设置分割元素的 取舍

# splitlines(True\False) 根据\n 分割 True保留\nTIME\tBIRTH\tLOVE


# 数组操作 索引

str1 = "ABCDEFG"

ch = str1[0]

str2 = str1[0:4] # 索引范围 0:-1 全部范围

print(len(str1)) # 获取字符串长度 python2 与 3 不同

list1 = ['aa','bb','cc','dd'] # 按逗号分

# len join等同样用于列表

# 范围循环

for i in str1:
	print(i)
	
	
vector = range(100) # python2.7 和 3 不同 创建连续的数字
# 前者此刻已经创建 后者在使用时才创建
# range(1, 100, 5) 首 尾 间隔

for item in vector:
	print(item)
	

  

猜你喜欢

转载自www.cnblogs.com/huangmin-st/p/10089191.html
今日推荐