pycharm
- 2020 年 4 月 24 日
- 筆記
一、pycharm常用設置及python介紹
1、定義變量:
print('hell0 word')#注釋:ctrl+?
print('hell0 word')#快速複製一行ctrl+d
name = 'xiaohei' #name定義變量,用來存東西,不能以數字開頭,隨便起
age = 18 # 整數類型int,小數類型float,可不加引號 ,小數也可不加
grade = 45.3 #float類型
words = "let's go" # 字符串string類型,變量里有單引號,外面就不能用單引號了
words2 = '小劉長得"非常美麗"' #小劉長得"非常美麗"
print(words2)
words3 = ''' let's go,小劉長得"非常美麗" ''' #單雙引號都有時候用三個單引號 ,三個引號,也代表注釋 '''
print(words3)
2、字符串格式化:
#歡迎XX登錄,今天時間是XX
name = '小劉'
time ='2020/04/18'
s= '歡迎'+name+'登錄,今天時間是'+time
s2 = '歡迎%s登錄,今天時間是%s'%(name,time)#佔位符
s3 = '歡迎%s'%name #佔位符只有一個的時候 %d 整數,%s字符串,%f 小數型
age = 10
score = 93.223
s4 = '年齡 %d,分數%.2f'%(age,score) #保留幾位小數,就.幾f
s5 = '年齡 %d,分數%f'%(age,score)
s6 = '年齡{age},分數{score}'.format(age=34,score=54.565)
s7 = '年齡{age},分數{score}'#字符串不可以被改變,需要重新賦值
s7 =s7.format(age=34,score=54.878)
print()
3、條件判斷:
python里的判斷只有一種:if else
#if條件 else;如果怎樣,否則怎樣,if,else後面都要加冒號,只要有冒號,下一行代碼都要縮進
# age = 18
# if age >= 18: #:標誌一行代碼結束
# print("大人")# !=不等於
# else: #單獨寫if是可以的,else可以不是必須的
# print("孩子") #<=18 未成年人>6,<=6 兒童,>=18<35年輕人
#
# age = 17
# if age <= 6:
# print('兒童')
# elif age < 18 and age > 6: #同時滿足用and;並且
# print('未成年人')
# elif age > 35 and age <= 55:
# print('中年人')
# else:
# print('老年人')
小練習:
1、
sex1 = '男'
sex2 = '女'
if sex1 == '男1' and sex2 == '女': #or 代表或者
print('性別正常')
else:
print('無法識別性別')
2、
grade = input('請輸入')# input接收的都是str類型
print('grade的類型',type(grade))#怎麼看變量的類型 用type
grade = int(grade)
if grade >= 90 and grade <= 100:
print('優秀')
elif grade <= 90 and grade >= 80: #同時滿足用and;並且
print('良好')
elif grade >= 60 and grade <= 80:
print('及格')
elif grade <60 and grade >=0:
print ('不及格')
else:
print('輸入不合法')
4、while 、for 循環:
1、
#循環、遍歷
#for :不需要計數器,for循環自動+1
#while :需要一個計數器;必須指定結束條件,否則會死循環(while對應else作用:while正常結束循環後,會執行else裏面的代碼,else不是必須寫的)
#break :立即結束循環,不管剩餘多少次沒有循環 (通過break不正常結束的循環,就不會執行else里的代碼)
#continue:結束本次循環,繼續進行下一次循環
while 循環:
# count = 0
# while count<10:#要有一個結束條件,不要陷入死循
# count = count+1
# if count == 4:
# continue
# print('創建文件夾', count)
# #break #只要遇到,立馬結束
# else:
# print('while對應else')#while對應else作用:while正常結束循環後,會執行else裏面的代碼,else不是必須寫的
#通過break不正常結束的循環,就不會執行else里的代碼
for循環:
for i in range(10):#for寫不了死循環,range里最終要寫一個數
if i == 4:
continue
print('創建文件夾',i)
else:#只要循環不是被break提前結束的,就會執行else
print('for對應else')
5、列表:
#int float str list
s = '小劉,小白,小黑,小蔡,小李,小三'#把小劉取出來,改為小劉劉
stus = ['小劉','小白','小黑','小蔡','小李','小三']
# 0 1 2 3 4 5
stu2 = []
#新增
stus.append('小花') #添加在最後
stus.insert(0,'小小')#指定位置
#修改
stus[0] = 'xiaoxiaoxiao'
#刪除
#stus.pop(0) #如果不傳值,默認刪除最後一個 ,但是傳值下標為多少,刪除的就是下標
#del stus[0] #del 也可以刪除,傳下標
#stus.clear()#清空列表
#stus.remove('小li')#傳的是元素,不是下標,傳不存在的元素,會報錯
#取值
# print(stus)
# print(stus[0])
# print(stus[1])
# print(stus)
#其他方法
m1 = [1,33,45,65,3,1]
print(m1.count(1))#統計 ,計數 #stus.count()
print(m1.index(33))#找索引,找下標 #stus.index()
m1.sort(reverse=True) ##stus.sort() ;默認升序排列 ,想要降序:添加一個 reverse=True
print(m1)#排序後,然後打印m1
m2 = m1.copy()#複製一個list
print(m2)
m2.extend(stus)#合併
print(m2)
m2.reverse()#反轉
print(m2)
6、字典
#存name phone addr
names = ['name1','name2']
phone = ['11','333']
addr = ['xx','xx']
infos = [ #二維數組 -1代表最後一個元素
['name1','111','北京'],#第一個元素,嵌套 list 又套了一層list
['name2','333','上海'],
['liuxiao','3451','廣州']
]
print(infos[2][0])
#
# info3 = [
# [
# 1,2,
# [1,2,3]
# ]
# ]
#查一下liuxiao的電話是多少
#字典
stu_info = {
'name':'liuxiao',
'phone':'3451',
'addr':'廣州'
}
#新增
stu_info['age'] = 18 #新增已經存在的,會把原來的修改,會覆蓋
stu_info.setdefault('weixin','1324234')#新增已經存在的,不會被修改
print(stu_info)
#修改
#stu_info['age'] = 18#指定的key,不存在就新增
#刪除
# stu_info.pop('1')#刪除一個不存在的key,會報錯
# del stu_info['anme']
#取值
print(stu_info.get('phone'))#get 取key不存在,不報錯 ,get 可以取默認值
print(stu_info['weixin'])#取不存在的值,會報錯 ;取key,不能取值
print(stu_info.get('sex','女'))#get不到,默認返回none
print(stu_info)
print(stu_info.keys())#所有的key
print(stu_info.values())#平均值 所有的值
stu_info.items()#把字典變為二維數組,每一個元素對應的key和value值
stu_info.update(name = '小王',money = 100)#更新 ,可以修改,也可以新增 新增money
print(stu_info)