
正文
python学习道路(day2note)(数据类型,运算符,字符串,列表)
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
一,数据类型
1.1数字
数字分为int(整型),long(长整型),float(浮点型)
1.1.1 int整型的取值范围为
在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647
在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807
1.1.2 long长整型就是当int整型溢出的时候需要用long长整型,但是在2.2版本以后,python会自动把溢出的int整型转换为long长整型
1.1.3 float浮点型 含有小数点就是浮点数
1.2布尔值
真或假 True或False 1或0
#!/usr/bin/env python
#_*_coding:utf-8_*_
a = 0 #false
if a:print('a')
a = 1 #true
')
1.3字符串
“Hello word” 一般用双引号,单引号引起来的字符或者数字都可以是字符串
1.3.1字符串格式化
#!/usr/bin/env python #_*_coding:utf-8_*_ name = "alex" print "i am %s " % name # 输出: i am alex
字符串是 %s;整数 %d;浮点数%f (也就是当Name改为岁数的时候,用Int整型一下,在格式输出就可以了)
1.3.4字符串常用功能
因为这里功能比较多,所以写入了一个Code里面,后面加了注释。
#!/usr/bin/env python
#_*_coding:utf-8_*_
"""
name = "alex"
print(name.capitalize()) #首字母大写
print(name.count("a")) #统计
print(name.center(50,"-")) #打印五十个字符,不够用-补齐,center中间
print(name.endswith("ex")) #判断以ex结尾,返回true falese
print(name.expandtabs(tabsize=30)) #就是将tab建转为多少个空格 没有什么用
print(name.find("a")) #查找索引,字符串也是可以切片
"""
names = "my names is {names} and i am {year}"
print(names.format(names="alex",year=23))
print('ab23'.isalnum()) #阿拉伯数字加上阿拉伯字符 #返回true falses
print('abA'.isalpha()) #纯英文字符
print('1A'.isdigit()) #是不是一个整数
print('a1A'.isidentifier()) #表示符 判断是不是一个合法的表示符(合法的变量名)
'.isnumeric()) #判断是不是只有数字 忘记吧 没有用
print(' '.isspace()) #是不是空格
print('My Names Is'.istitle()) #每个单词字母首字母大小
print('my name is'.isprintable()) #tty file , drive file 忘记吧
print('My name is'.isupper()) #是不是大写
print('a 1A'.islower()) #判断是不是小写
#print("my name is".join())
'])) #添加中间连接符
print(names.ljust(50,'*')) #第一个参数长度,第二个补全位置
print(names.rjust(50,'*')) #
print('ALEX'.lower()) #大写变小写
print('alex'.upper())
print('\nAlex'.lstrip()) #去左边的空格回车
print(' alex'.strip()) #去2遍空格回车
print('alEx\n'.rstrip())
p = str.maketrans(')
print("alex li".translate(p)) # 随机密码可以搞
print('alex li'.replace('l','L',1)) #替换 1就是换几个
print('alex li'.rfind('l')) #从左往右,找到的最右边的值得下标
print('alex li'.split()) #按空格分开成列表了
print('1-2-3-4'.split('-')) #按-分隔成列表
print('1-2\n-3-4'.splitlines()) #按换行符\n来分割
print('alex li'.swapcase()) #大小写互换
print('alex li'.title()) #每个字符首字母变成大写
print('alex li'.zfill(50)) #没有什么用
1.4列表
创建列表格式为
name_list
=
[
'alex'
,
'seven'
,
'eric'
]
或者
name_list =
list
([
'alex'
,
'seven'
,
'eric'
])
因为操作比较多,所以写入了一个Code里面,后面加了注释。
#!/usr/bin/env python
#_*_coding:utf-8_*_
names = ["zhangyang","guyun","xiangpeng","xuliangchen"]
# 0 1 2 3
print(names)
print(names[0],names[2])
#取 1 2 的时候 起始位置包括,结尾部分不包括(顾头不顾尾)
print(names[1:3]) #这个就叫切片
print(names[-1]) #取最后一个 -1 从右边开始数
print(names[-1:-3]) #查找是从左往右所以要写成下面的
print(names[-3:-1])
print(names[-2:]) #取最后2个值
print(names[:3])
print("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@")
#增删改查
names.append("leihaidong") #追加
names.insert(1,"chenronghua") #插入在下角标1的位置前面
# ['zhangyang', 'chenronghua', 'guyun', 'xiangpeng', 'xuliangchen', 'leihaidong']
names[2] = "xiedi" #改
names.remove("chenronghua") #删除
del names[1] #下角标删除
names.pop() #默认删除最后一个值
names.pop(1) #添加下角标作用就是跟del names[1] 效果一样
print(names)
print(names.index("xiedi")) #查找目标下角标位置
print(names[names.index("xiedi")]) #查找xiedi角标,在打印出来角标对应的名字
print(names.count("chenronghua")) #统计列表中有多个
names.clear() #清空
names.reverse() #反转
names.sort() #排序 特殊符号 数字 大写 小写
names2 = [1,2,3,4]
names.extend(names2) #合并过来
del names2 #删除变量
names = ['zhangyang', 'chenronghua',['guyun', 'xiangpeng', ] ,'xuliangchen', 'leihaidong']
#names = ['zhangyang', 'chenronghua','xuliangchen', 'leihaidong']
#names2 = names.copy()
#names2 = copy.copy(names) #相当于浅copy
names2 = copy.deepcopy(names) #深copy,2个列表相对独立
names[1] = "joker"
names[2][0] = "jokerbj"
print(names)
print(names2)
1.4.1列表循环
#!/usr/bin/env python
#_*_coding:utf-8_*_
#列表循环
for i in names:
print(i)
print(names[0-1:2]) #===== print(names[::2]) 布长切片
#range(1,10,2)
1.5数据运算(这里面常用的运算符跟shell差不多,所以直接copy老师了)
赋值运算:
逻辑运算:
成员运算:
身份运算:
更多内容 http://www.runoob.com/python/python-operators.html








