非空即真 非0即真
name = input('请输入名字:').strip() if name: print('name不能为空') else: print('输入不能为空')
交换变量
a = 1 b = 2 c = None c = b b = a a = c print(a,b) # 运行后 2,1
python中可以像下面这样写(python底层引入第三方变量在交换):
a = 1 b = 2 b,a = a,b print(a,b) #运行后 2,1
在不引入第三方变量情况下交换:
a = 1 b = 2 a = a+b# a = 3 b = a-b #b = 1 a = a-b #a = 2 print(a,b) #运行后 2,1
字符串方法
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 # a = 'python' 2 # print(a.count()) #出现的次数 3 # print(a.index())# 下标 找不到抱错 4 # print(a.find()) #下标 找不到返回-1 5 # print(a.replace('t','T')) 6 # print(a.islower()) #是否全部都是小写 7 # print(a.isupper())#是否全部都是大写 8 # print(a.isdigit())#是否都是数字 9 # print(a.isalpha())#是否全都是汉字或字母 10 # print(a.isalnum())#只要不是特殊符号,就返回true 11 # print(a.lower()) #变成小写 12 # print(a.upper())#变成大写 13 # print(a.startswith())#以什么开头 14 # print(a.endswith())#以什么结尾 15 #''.join('')#连接字符串 16 l = ['a','b','c','d'] 17 res = ''.join(l)#把list转换成字符串 18 print(res) 19 #运行结果 20 #abcd 21 res1 = '11'.join(l) 22 print(res1) 23 #运行后 通过某个字符串把list中的元素连接起来 24 #a11b11c11d
import string
1 # import string 2 # print(string.ascii_lowercase)#所有的小写字母 3 # res = ','.join(string.ascii_lowercase)#所有小写字母用, 4 # print(string.ascii_uppercase)#所有的大写字母 5 # print(string.digits)#所有数字 6 # print(string.ascii_letters)#所有的字母 7 # print(string.punctuation)#所有的特殊字符
.spilt()分割,用某个字符串分割字符串
names = 'niuhanyang,zch,wyf' name_list = names.split(',')#根据某个字符串分割字符串
name_list = names.split('h')#用h分割字符串
#运行后
#['niu', 'anyang,zc', ',wyf'] print(name_list) #运行后 #['niuhanyang', 'zch', 'wyf']
集合---天生去重, 无序的一种数据类型
创建集合:
1.set1 = set()
1 set1 = {1,2,3}
集合的添加:add和update。
集合add方法:是把要传入的元素做为一个整个添加到集合中,例如:
a = set('boy') a.add('python') print(a) #运行后 {'b', 'o', 'python', 'y'}
集合update方法:是把要传入的元素拆分,做为个体传入到集合中,例如:
a = set('boy') a.update('python') print(a) #运行后 (['b', 'h', 'o', 'n', 'p', 't', 'y'])
集合删除操作方法:remove
a = {1,2,3} a.remove(2) print(a) #运行后 {1, 3}
集合之交集,并集,差集
a = {1,2,3} b = {1, 3} print(a&b) #取交集 #运行后 #{1, 3} print(a|b) #取并集 #运行后 #{1, 2, 3} print(a.union(b))#取并集 #运行后 #{1, 2, 3} print(a-b)#取差集 #运行后 #{2}
文件操作
# 读模式 写模式 追加模式 f = open('names','a+',encoding='utf-8') #打开文件 print(f.read()) #读文件 # print(f.readline()) #读取一行内容 # print(f.readlines()) #是把文件的每一行放到一个list里面 f.write('双方都')#写入 # print(f.read()) #只要沾上了r,文件不存在的就会报错 #只要沾上了w,都会清空原来的内容 # 读模式 r 读写模式 r+ #1、不能写 #2、文件不存在的话会报错 # 写模式 w 写读模式 w+ #1、文件不存在的话,会帮你新建文件 #2、打开一个已经存的文件,他会清空以前文件的内容 #3、不能读 # 追加模式 a 追加读模式 a+ #文件末尾去增加内容 # 1、文件不存在的话,会帮你新建文件 # 2、打开一个已经存的文件,不会清空,末尾增加 # 3、不能读
import random #18612343, #12384234 # 1861253 2945 print(random.randint(1,9999)) print('1'.zfill(4)) #1、先随机产生一些手机号 #2、写到文件里面 f = open('phones.txt', 'w') num = input('请输入你要产生的手机号个数:') for i in range(int(num)): # start = '1861235' random_num = str(random.randint(1, 9999)) new_num = random_num.zfill(4)#补0 phone_num = start+new_num #这一行有问题 f.write(phone_num+'\n') f.close()
文件指针:
# 文件指针: # 用来记录文件到底读到哪里了 # f = open('naems','a+',encoding='utf-8') # a模式的文件指针是在末尾的 # f.write('呵呵呵') # f.seek(0) #移动文件指针到最前面 # f.write('鹏妹妹') #移动完文件指针之后,是只能读,写的时候还是在文件末尾写 # print(f.read())