####pycharm和if语法####

本文介绍了PyCharm的安装与配置,包括设置字体、创建文件格式和快捷键。接着,详细讲解了Python的基础语法,如if判断语句的三种格式,并通过实例演示了如何判断学生分数等级、实现猜拳游戏以及判断闰年等。同时,文章还涵盖了逻辑运算符、for循环和while循环的用法,包括循环控制语句break和continue的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

###pycharm的使用####
1.)pycharm安装包的获取和解压(在普通用户环境下执行)
tar zxf pycharm-community-2016.3.2.tar.gz ##解压pycharm可以看见如下图
在这里插入图片描述2)运行pycharm
在这里插入图片描述
在这里插入图片描述
环境默认方式:
在这里插入图片描述
3)创建新的
在这里插入图片描述
4)选择按装路径:
在这里插入图片描述5)设置

  • pycharm设置界面(ctrl+alt+s)
  • 修改菜单栏字体
  • 修改代码栏字体
  • 在这里插入图片描述
  • 在这里插入图片描述6)创建文件格式,生成python文件
  • 在这里插入图片描述
    在这里插入图片描述7)pycharm快捷键的建立
# - pycharm设置界面(ctrl+alt+s)
# - 修改菜单栏字体
# - 修改代码栏字体
# - 修改python解释器位置
# - 如何快速创建文件(alt+insert)
# - 格式化python代码, 使得风格好看(ctrl+alt+L)
#自动缩进:(ctrl+alt+l)
#缩进/取消缩进 (Tab/shift+Tab)
# - 如何修改指定功能的快捷键
# - 如何撤销代码的修改(ctrl+z)
# - 如何取消撤销的代码的修改(ctrl+shift+z)
# - 快速重命名(shift+F6)
# - 快速注释代码(ctrl+/)
# - 快速取消注释代码(ctrl+/)
#代码快速运行(ctrl+shif+F10)
#编辑代码光标不再末尾时换行(shift+Enter)
#快速查看文档:(ctrl +q)
#查看内置函数介绍: crtl +鼠标点击函数名
#快速复制当前行:crtl +D

在这里插入图片描述

在这里插入图片描述
#####python基础语法###
1.)if判断语句
格式1:
if <判断条件>
<条件成立要执行的语句>
格式2:

if <要判断的条件(True)>
< 条件成立的时候,要做的事情>;
else:
<条件不成立的时候要做的事情>
格式3:

if <判断的条件1>
< 条件1成立的时候,要做的事情>;
elif <判断的条件2>
< 条件2成立的时候,要做的事情>;
else:
<条件都不成立的时候要做的事情>

在这里插入图片描述
1.if语句判断学生分数等级
90-100 A
80-90 B
60-80 C
0-60 D

# 1.接受一个成绩
score = int(input('请输入一个学生的成绩:'))
# 开始条件1判断
if 90 < score <= 100:
    print('A等级')  #满足条件1,执行的命令
#开始条件2判断
elif 80 < score <= 90:
    print('B等级') #满足条件2,执行的命令
#开始条件3判断
elif 60 < score <= 80:
    print('C等级') #满足条件3,执行的命令
#以上条件都不满足
else:
    print('D等级') #条件都不满足,执行的命令


if语句练习:
1.判断用户输入是否为空:

value = input('请输入内容:')
if value:
    print('输入不为空!')
else:
    print('输入为空,请重新输入!')

需求:
1.从控制台输入要出的拳 —石头(1)/剪刀(2)/布(3)
2.电脑随即出拳
3.比较胜负
石头 胜 剪刀
剪刀 胜 布
布 胜 石头

#电脑随机出拳,倒入随机生成模块
import random
#控制台接受要出的拳,定义拳的代表数字
player = int(input('请输入要出的拳: 石头(1)剪刀(2)布(3)'))  #打印出电脑和玩家出的拳
#电脑随机出拳,random.randint(start,stop)生成一个范围内的随机数
computer = random.randint(1,3)
print('玩家:%d,电脑:%d'%(player,computer))
#if 条件判断
#条件1判断  玩家赢
if ((player == 1 and  computer == 2) or
(player == 2 and  computer == 3) or
(player == 3 and  computer == 1)):
    print('玩家赢!!')  #条件1成立要执行的命令
#条件2判断 平局#条件1成立要执行的命令
elif player == computer:
    print('平局!!')#条件2成立要执行的命令
#之前两个条件都不成立,玩家输
else:
    print('玩家输!!')#以上条件都不成立要执行的命令

2)随机数的应用:
import random #python的第三方模块库
random.randint(start,stop) #生成一个范围内的随机数, 下限必须小于上限

[root@localhost bin]# ./python3
Python 3.6.4 (default, May 23 2019, 18:41:28) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux
Type "help", "copyright", "credits" or "license" for more information.

>>> import random  import random  #python的第三方模块库
>>> random.randint(10,15)   ## #随机返回[10,15]之间的整数
14
>>> random.randint(10,15)
10
>>> random.randint(10,15)
15
>>> random.randint(10,15)
14
>>> random.randint(15,13)  # 下限必须小于上限
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/python3/lib/python3.6/random.py", line 221, in randint
    return self.randrange(a, b+1)
  File "/usr/local/python3/lib/python3.6/random.py", line 199, in randrange
    raise ValueError("empty range for randrange() (%d,%d, %d)" % (istart, istop, width))
ValueError: empty range for randrange() (15,14, -1)
>>> random.randint(10,10)  ##结果永远是10
10
>>>  random.randint(10,10)
10

3)逻辑运算符号

and
条件1 and 条件2
两个条件同时满足,就返回True
只要有一个条件不满足,就返回False

在这里插入图片描述

or
条件1 or 条件2
两个条件只要有一个满足,就返回True
两个条件都不满足的时候,就返回False

在这里插入图片描述
#1. 判断闰年?
#用户输入年份year, 判断是否为闰年?
#- year能被4整除但是不能被100整除 或者 year能被400整除, 那么就是闰年;

 year = int(input('请输入一个年份:'))
能被4和400整除,不能被100整除   %整除
if ((year%4 == 0 and year%100 !=0) or
       (year%400 == 0)):
  print('%d是闰年' %(year))
else:
  print('%d是平年' %(year))

运行结果:
请输入一个年份:2008
2008是闰年
请输入一个年份:1995
1995是平年

在这里插入图片描述
#2.随机选择一个三位以内的数字作为答案。用户输入一个数字,程序会提示大了或是小了
#接受年份

import  random 
user_number = float(input('请输入一个数:'))
computer = random.randint(0,999) ##随机生成一个3为数以内的数
print('用户输入:%s,computer输入:%s' %(user_number,computer))
if user_number>computer:
    print('用户输入大于随机生成数')
elif user_number == computer:
    print('用户输入等于随机生成数')
else:
    print('用户输入小于随机生成数')
运行结果:
请输入一个数字:70
num:70  computer:45
70大于45
请输入一个数字:10
num:10  computer:55
10小于55

在这里插入图片描述
输入年、月,输出本月有多少天。合理选择分支语句完成设计任务。
输入样例1:2004 2
输出结果1:本月29天
输入样例2:2010 4
输出结果2:本月30天

方法一:

#判断平年闰年
year = int(input('请输入年份:'))                     
month = int(input('请输入月份:'))                    
month1 = [1,3,5,7,8,10,11 ]                     
month2 = [4,6,9,12]                             
if month == 2:                                  
    if ((year%400 == 0) or                      
       (year%4 == 0 and year%100 != 0)):        
       print('%d年%d月是29天' % (year, month))      
    else:                                       
     print('%d年%d月是28天' % (year, month))        
elif month in month1:                           
     print('%d年%d月是31天' % (year, month))        
elif month in month2:                           
     print('%d年%d月是30天' % (year, month))        
else:                                           
    print('%d是错误时期' %(month))                   
运行结果:
请输入年份:2008
请输入月份:2
2008年2月是29天
方法二

year = int(input('请输入年份:'))
Month = int(input('请输入月份:'))
day = [0,31,29,31,30,31,30,31,31,30,31,30,31]
day1 = [0,31,28,31,30,31,30,31,31,30,31,30,31]
if ((year%4 == 0 and year%100 !=0) or
     (year%400 == 0)):
    print('%d年%d月是%d天' %(year,Month,day[Month]))
else:
    print('%d年%d月是%d天' % (year, Month, day1[Month]))
 运行结果:
    请输入年份:1995
请输入月份:3
1995年3月是31天

2.用 if 判断输入的值是否为空?如果为空,报错Error。

value = input('请输入一个值:')    
if value == '':             
    print('Error:输入值为空')    
else:                       
    print('完成输入')           
    运行:
    请输入一个值:
Error:输入值为空

  1. 根据用于指定月份,打印该月份所属的季节。
    **提示: 3,4,5 春季 6,7,8 夏季 9,10,11 秋季 12, 1, 2 冬季
方法一
month = int(input('请输入需要判断的月份:'))         
month1 = [3,4,5]                          
month2 = [6,7,8]                          
month3 = [8,9,10]                         
month4 = [1,2,3]                          
if month in month1:                       
    print('%d 是春季' %(month))              
elif month in month2:                     
    print('%d 是夏季' %(month))              
elif month in month3:                     
    print('%d 是秋季' %(month))              
else:                                     
    print('%d 是冬季' %(month))      
    方法二
    month = int(input('请输入需要判断的月份:'))        
if 3<=month<=5:                          
      print('%d 是春季' %(month))           
elif 6<=month<=8:                        
      print('%d 是夏季' %(month))           
elif 9<=month<=11:                       
      print('%d 是秋季' %(month))           
else:                                    
     print('%d 是冬季' %(month))                    

4)for循环语句:

1.range()函数,指定要循环的次数;返回一个函数序列,默认从0开始指定数字递增1结束;
range():内置python函数
range(stop):0~stop-1
range(start,stop):start~stop-1
range(start,stop,step):start~stop-1 step:为步长

>>> range(5)   ##指定5次
[0, 1, 2, 3, 4]  ##从0开始,4结束
>>> range(2,5)  ##指定从2开始到5结束
[2, 3, 4]  ##从2开始,4结束
>>> range(1,15,2)  ##指定1开始15结束,步长为2
[1, 3, 5, 7, 9, 11, 13]
>>> range(2,15,2)  ##指定2开始15结束,步长为2
[2, 4, 6, 8, 10, 12, 14]

for 循环用于遍历序列(即列表、元组、集合或字符串),可以用for循环位序列的每一项执行操作;
格式1:for <变量> in <序列>
<循环需要执行的代码>
格式2:
for <变量> in <序列>
else:
<全部循环结束后需要执行的代码>
注:else之后的操作必须是for语句遍历序列的每一项后才能执行

for循环求1~100和:

result = 0           
for i in range(101): 
      result += i   
print(result)    
运行:   
5050

for循环求1~100间奇数和

 result = 0              
for i in range(1,100,2):
       result += i      
print(result)     
运行:  
2500 

for循环求1~100间偶数和

 result = 0                 
for i in range(2,101,2):   
       result += i         
print(result)    
运行:
2550          

for循环的结束方式:

break:跳出整个循环,不会再循环后面的内容

在这里插入图片描述

continue语句停止执行当前循环(不执行continue之后的语句),然后继续下一个循环
在这里插入图片描述
exit():结束程序的运行
在这里插入图片描述
用户输入一个数字,求该数的阶乘:3!=321

方法一:
num = int(input('Num:'))
res = 1
for i in range(1,num+1):
    res = res * i
print('%d的阶乘的结果为:%d' %(num,res))
方法二:
num = int(input('请输入一个数:'))          
result = 1                           
for i in range(1,num+1):             
       result *= i                   
print(result)                        

用户登陆程序
1.输入用户名和密码
2.判断用户名和密码是否正确(‘name==root’,'passwd=‘westos’)
3.为了防止暴力破解,登陆次数仅有三次,如果超过三次机会,报错

# for循环登陆机会3次                                                 
for i in range(3):                                            
    # 接受用户和密码                                                 
    user = input('请输入用户名:')                                   
    passwd = input('请输入用户密码:')                                
    if user == 'root' and passwd == 'westos':  # 判断用户名和密码     
        print('%s用户登陆成功' % (user))                            
        break     # 跳出整个循环,不会再执行后面的内容                                            
    else:                                                     
        time = 2 - i                                          
        print('%s用户登录失败,还有%d次登陆机会' % (user, time))            
else:                                                         
    print('%s用户登录超过3次,登陆失败' % (user))   
    方法二:
    or i in range(3): #0 1 2
    name = input('用户名:')
    passwd = input('密码:')
    if name == 'root' and passwd == 'westos':
        print('登陆成功')
        # 跳出整个循环,不会再执行后面的内容
        break

    else:
        print('登陆失败')
        print('您还剩余%d次机会' %(2-i))
else:
    print('登陆次数超过三次,请等待100s后再次登陆')

    运行:                      
  请输入用户名:root
请输入用户密码:redhat
root用户登录失败,还有2次登陆机会
请输入用户名:redhat
请输入用户密码:westosa
redhat用户登录失败,还有1次登陆机会
请输入用户名:rewsds
请输入用户密码:ewdwsw
rewsds用户登录失败,还有0次登陆机会
rewsds用户登录超过3次,登陆失败                                                

输入两个数值:
求两个数的最大公约数和最小公倍数.
最小公倍数=(num1*num2)/最大公约数

#接收两个数                                                     
num1 = int(input('请输入一个数:'))                               
num2 = int(input('请输入一个数:'))                               
min_num = min(num1,num2)     #找出两个数最小值                     
for i in range(1, min_num + 1): #最大公约数在 1~ min_num 之间      
      if num1%i == 0 and num2%i == 0:                      
          最大公约数=i   #当循环结束的时候,保存的就是最大的公约数                  
print('%d 和%d的最大公约数是%d' %(num1,num2, 最大公约数))               
最小公倍数 = (num1 * num2)/最大公约数                                
print('%d 和%d的最小公倍数是%d' %(num1,num2, 最小公倍数))               

####while 循环语句###
1.格式:
while 条件满足:
满足条件执行的语句
else:
不满足条件执行的语句
用户登陆

i= 0
while i<3:
    name = input('用户名:')
    passwd = input('密码:')
    if name == 'root' and passwd == 'westos':
        print('登陆成功')
        # 跳出整个循环,不会再执行后面的内容
        break

    else:
        print('登陆失败')
        print('您还剩余%d次机会' %(2-i))
        i += 1
else:
    print('登陆次数超过三次,请等待100s后再次登陆')

2.##while死循环:只要满足while的条件为真,就会无限循环
例如:

while 1 <2:            
    print('True')      

3.while嵌套
\t:在控制台输出一个制表符,协助我们在输出文本的时候在垂直方向保持对齐
\n:在控制台输出一个换行符
:转译,将特殊字符转译成普通字符

\t:在控制台输出一个制表符,协助我们在输出文本的时候在垂直方向保持对齐
print('1 2 3')
print('10 20 30')
print('1\t2\t3')
print('10\t20\t30')
 \n:在控制台输出一个换行符
print('hello\nworld')
 \:转译
print('what\'s')

练习 99乘法表
方式一:

row = 1                                                         
while row <= 9:                                                 
      col = 1                                                   
      while col <= row:                                         
          print('%d * %d = %d\t' %(row,col,row*col),end = '')   
          col +=1                                               
      print('')                                                 
      row +=1
      运行:
      1 * 1 = 1	
2 * 1 = 2	2 * 2 = 4	
3 * 1 = 3	3 * 2 = 6	3 * 3 = 9	
4 * 1 = 4	4 * 2 = 8	4 * 3 = 12	4 * 4 = 16	
5 * 1 = 5	5 * 2 = 10	5 * 3 = 15	5 * 4 = 20	5 * 5 = 25	
6 * 1 = 6	6 * 2 = 12	6 * 3 = 18	6 * 4 = 24	6 * 5 = 30	6 * 6 = 36	
7 * 1 = 7	7 * 2 = 14	7 * 3 = 21	7 * 4 = 28	7 * 5 = 35	7 * 6 = 42	7 * 7 = 49	
8 * 1 = 8	8 * 2 = 16	8 * 3 = 24	8 * 4 = 32	8 * 5 = 40	8 * 6 = 48	8 * 7 = 56	8 * 8 = 64	
9 * 1 = 9	9 * 2 = 18	9 * 3 = 27	9 * 4 = 36	9 * 5 = 45	9 * 6 = 54	9 * 7 = 63	9 * 8 = 72	9 * 9 = 81

方法二

row = 9                                                       
while row >=1:                                                
      col = row                                               
      while col >=1:                                          
          print('%d * %d = %d\t' %(row,col,row*col),end = '') 
          col -=1                                             
      print('')                                               
      row -=1        
     
  运行
9 * 9 = 81	9 * 8 = 72	9 * 7 = 63	9 * 6 = 54	9 * 5 = 45	9 * 4 = 36	9 * 3 = 27	9 * 2 = 18	9 * 1 = 9	
8 * 8 = 64	8 * 7 = 56	8 * 6 = 48	8 * 5 = 40	8 * 4 = 32	8 * 3 = 24	8 * 2 = 16	8 * 1 = 8	
7 * 7 = 49	7 * 6 = 42	7 * 5 = 35	7 * 4 = 28	7 * 3 = 21	7 * 2 = 14	7 * 1 = 7	
6 * 6 = 36	6 * 5 = 30	6 * 4 = 24	6 * 3 = 18	6 * 2 = 12	6 * 1 = 6	
5 * 5 = 25	5 * 4 = 20	5 * 3 = 15	5 * 2 = 10	5 * 1 = 5	
4 * 4 = 16	4 * 3 = 12	4 * 2 = 8	4 * 1 = 4	
3 * 3 = 9	3 * 2 = 6	3 * 1 = 3	
2 * 2 = 4	2 * 1 = 2	
1 * 1 = 1	
                                                                                            

方法3

row = 9                                                                     
while row >=1:                                                              
      col = 9                                                               
      while col >=1:                                                        
          if col>row:                                                       
              print('         \t',end='')    ##                               
          else:                                                             
               print('%d * %d = %d\t' %(row,col,row*col),end = '')          
          col -=1                                                           
      print('')                                                             
      row -=1      
  运行:                                                        
9 * 9 = 81	9 * 8 = 72	9 * 7 = 63	9 * 6 = 54	9 * 5 = 45	9 * 4 = 36	9 * 3 = 27	9 * 2 = 18	9 * 1 = 9	
      	       8 * 8 = 64	8 * 7 = 56	8 * 6 = 48	8 * 5 = 40	8 * 4 = 32	8 * 3 = 24	8 * 2 = 16	8 * 1 = 8	
      	      	              7 * 7 = 49	7 * 6 = 42	7 * 5 = 35	7 * 4 = 28	7 * 3 = 21	7 * 2 = 14	7 * 1 = 7	
      	      	                            	6 * 6 = 36	6 * 5 = 30	6 * 4 = 24	6 * 3 = 18	6 * 2 = 12	6 * 1 = 6	
      	      	      	      	                             5 * 5 = 25	5 * 4 = 20	5 * 3 = 15	5 * 2 = 10	5 * 1 = 5	
      	      	      	      	      	                                     4 * 4 = 16	4 * 3 = 12	4 * 2 = 8	4 * 1 = 4	
      	      	      	      	      	                                                       	3 * 3 = 9	3 * 2 = 6	3 * 1 = 3	
      	      	      	      	      	      	                                                             	2 * 2 = 4	2 * 1 = 2	
      	      	      	      	      	      	      	                                                                    	1 * 1 = 1	

<think>好的,用户询问的是关于Python编程语言的信息。首先,我需要确认用户的具体需求。用户可能想了解Python的基本特性、应用场景或者学习资源。根据系统指令,回答需要结构清晰,分步骤说明,并且引用相关材料。 首先,我应该介绍Python的基本概念,比如它是什么类型的语言,有哪些特点。这里可以引用提供的资料,比如引用[1]提到的解释型、交互式、面向对象等特点。同时,要提到Python的简洁语法可读性,这对初学者友好,这也是引用[1][2]中强调的。 接下来,需要分点详细说明Python的特点。例如,解释型语言意味着不需要编译,直接运行,这适合快速开发。面向对象特性支持代码封装,适合大型项目。此外,动态类型自动内存管理也是Python的优势,可以简化开发流程。 然后,应用场景部分需要涵盖不同领域,比如Web开发、数据科学、人工智能等,每个领域举几个例子,说明Python在这些方面的优势,比如DjangoFlask框架用于Web开发,PandasNumPy用于数据分析,TensorFlowPyTorch用于机器学习。 学习路径部分应该给用户一个明确的指引,从基础语法到高级应用,逐步深入。同时推荐官方文档社区资源,帮助用户自主学习。这里要注意引用格式,比如引用[1][2]中的相关内容。 生成的相关问题需要围绕用户可能感兴趣的扩展内容,比如对比其他语言、选择框架、性能优化等,这样用户如果有进一步疑问,可以引导他们探索更多信息。 最后,确保所有LaTeX格式正确,行内公式用$...$,独立公式用$$...$$,但当前回答中可能不需要数学公式,所以需要检查是否有必要添加。例如,在解释时间复杂度时,可以用$O(n log n)$这样的表达式,但根据用户问题,可能不需要,所以可能不需要加入。 需要避免使用Markdown格式,使用自然的中文段落,确保引用标识正确放置在引用内容的末尾,例如在提到Python特点时加上[^1]。同时,代码块需要用三个反引号包裹,并指定语言为python,如示例中的快速排序代码。 现在需要组织这些信息,确保每个部分清晰,符合用户的请求,并且引用正确。可能还需要检查是否有冗余信息,确保回答简洁有效。最后生成相关问题,帮助用户深入理解Python的不同方面。</think>[用户可见层] # Python编程语言详解 ## 一、基本概念 Python是一种高级的、解释型的、交互式的编程语言,由Guido van Rossum于1991年首次发布。其设计强调代码可读性,采用简洁的语法结构,如使用缩进代替大括号划分代码块[^1]。 ## 二、核心特点 1. **解释型语言** 无需编译即可执行,支持快速测试代码片段: ```python print("Hello, World!") # 直接运行输出结果 ``` 2. **面向对象** 支持类与对象的封装: ```python class Dog: def __init__(self, name): self.name = name def bark(self): print(f"{self.name} says woof!") ``` 3. **动态类型系统** 变量类型在运行时自动推断: ```python x = 10 # 整型 x = "text" # 自动转为字符串类型 ``` 4. **丰富的标准库** 包含200+内置模块,如`os`模块处理操作系统交互: ```python import os print(os.getcwd()) # 获取当前工作目录 ``` ## 三、典型应用场景 | 领域 | 应用框架/库 | 示例功能 | |--------------|--------------------------|-----------------------------| | Web开发 | Django, Flask | 构建RESTful API | | 数据科学 | Pandas, NumPy | 数据清洗与矩阵运算 | | 机器学习 | TensorFlow, PyTorch | 神经网络模型训练 | | 自动化脚本 | Selenium, OpenCV | 网页自动化/图像处理 | ## 四、学习路径建议 1. **基础阶段** - 变量与数据类型 - 控制流语句(if/for/while) - 函数定义与调用 2. **进阶阶段** - 面向对象编程 - 异常处理机制 - 文件操作与模块导入 3. **实战阶段** - 参与GitHub开源项目 - 使用PyCharm进行调试 - 阅读[官方文档](https://docs.python.org/3/)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值